diff --git a/Dockerfile b/Dockerfile index e43c154..f9daed8 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,5 +1,5 @@ # -FROM muccg/python-base:debian8-2.7 +FROM python:2.7-alpine MAINTAINER https://github.com/muccg ARG DEVPI_VERSION @@ -7,9 +7,23 @@ ARG PIP_INDEX_URL=https://pypi.python.org/simple/ ARG PIP_TRUSTED_HOST=127.0.0.1 ENV DEVPI_VERSION $DEVPI_VERSION +ENV VIRTUAL_ENV /env + +# devpi user +RUN addgroup -S -g 1000 devpi \ + && adduser -D -S -u 1000 -h /data -s /sbin/nologin -G devpi devpi + +# entrypoint is written in bash +RUN apk add --no-cache bash + +# create a virtual env in $VIRTUAL_ENV, ensure it respects pip version +RUN pip install $PIP_OPTS virtualenv \ + && virtualenv $VIRTUAL_ENV \ + && $VIRTUAL_ENV/bin/pip install --upgrade --no-cache-dir pip==$PYTHON_PIP_VERSION +ENV PATH $VIRTUAL_ENV/bin:$PATH RUN NO_PROXY=$PIP_TRUSTED_HOST pip --trusted-host $PIP_TRUSTED_HOST install -i $PIP_INDEX_URL --upgrade \ - "devpi-client>=2.3.0,<2.4" \ + "devpi-client==2.6.3" \ "devpi-server==$DEVPI_VERSION" EXPOSE 3141 @@ -18,8 +32,7 @@ VOLUME /data COPY docker-entrypoint.sh /docker-entrypoint.sh RUN chmod +x /docker-entrypoint.sh -# Drop privileges, set home for ccg-user -USER ccg-user +USER devpi ENV HOME /data WORKDIR /data diff --git a/build.sh b/build.sh index c242cec..9163f79 100755 --- a/build.sh +++ b/build.sh @@ -9,7 +9,7 @@ set -e REPO="muccg" DATE=`date +%Y.%m.%d` -DEVPI_VERSION="2.5.3" +DEVPI_VERSION="4.0.0" # ALternative config to use local proxy #DOCKER_HOST=$(ip -4 addr show docker0 | grep -Po 'inet \K[\d.]+')