diff --git a/Dockerfile b/Dockerfile index 354ba00a4..c6dbdefd6 100644 --- a/Dockerfile +++ b/Dockerfile @@ -10,15 +10,16 @@ RUN set -ex; \ zlib1g-dev \ libssl-dev \ git \ - apt-transport-https \ ca-certificates \ curl \ - lxc \ - iptables \ libsqlite3-dev \ ; \ rm -rf /var/lib/apt/lists/* +RUN curl https://get.docker.com/builds/Linux/x86_64/docker-latest \ + -o /usr/local/bin/docker && \ + chmod +x /usr/local/bin/docker + # Build Python 2.7.9 from source RUN set -ex; \ curl -LO https://www.python.org/ftp/python/2.7.9/Python-2.7.9.tgz; \ @@ -69,19 +70,17 @@ ENV LANG en_US.UTF-8 RUN useradd -d /home/user -m -s /bin/bash user WORKDIR /code/ -RUN pip install tox - -ADD requirements.txt /code/ -RUN pip install -r requirements.txt - -ADD requirements-dev.txt /code/ -RUN pip install -r requirements-dev.txt - RUN pip install tox==2.1.1 -ADD . /code/ -RUN pip install --no-deps -e /code +ADD requirements.txt /code/ +ADD requirements-dev.txt /code/ +ADD .pre-commit-config.yaml /code/ +ADD setup.py /code/ +ADD tox.ini /code/ +ADD compose /code/compose/ +RUN tox --notest +ADD . /code/ RUN chown -R user /code/ -ENTRYPOINT ["/usr/local/bin/docker-compose"] +ENTRYPOINT ["/code/.tox/py27/bin/docker-compose"] diff --git a/script/build-linux b/script/build-linux index 4fdf1d926..bf966fc8e 100755 --- a/script/build-linux +++ b/script/build-linux @@ -4,8 +4,4 @@ set -ex TAG="docker-compose" docker build -t "$TAG" . -docker run \ - --rm \ - --volume="$(pwd):/code" \ - --entrypoint="script/build-linux-inner" \ - "$TAG" +docker run --rm --entrypoint="script/build-linux-inner" "$TAG" diff --git a/script/build-linux-inner b/script/build-linux-inner index e5d290eba..1d0f79050 100755 --- a/script/build-linux-inner +++ b/script/build-linux-inner @@ -3,11 +3,12 @@ set -ex TARGET=dist/docker-compose-Linux-x86_64 +VENV=/code/.tox/py27 mkdir -p `pwd`/dist chmod 777 `pwd`/dist -pip install -r requirements-build.txt -su -c "pyinstaller docker-compose.spec" user +$VENV/bin/pip install -r requirements-build.txt +su -c "$VENV/bin/pyinstaller docker-compose.spec" user mv dist/docker-compose $TARGET $TARGET version