You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
46 lines
1.2 KiB
46 lines
1.2 KiB
#
|
|
FROM python:3.5-alpine
|
|
MAINTAINER https://github.com/muccg/
|
|
|
|
ARG ARG_DEVPI_SERVER_VERSION
|
|
ARG ARG_DEVPI_WEB_VERSION
|
|
ARG ARG_DEVPI_CLIENT_VERSION
|
|
|
|
ENV DEVPI_SERVER_VERSION $ARG_DEVPI_SERVER_VERSION
|
|
ENV DEVPI_WEB_VERSION $ARG_DEVPI_WEB_VERSION
|
|
ENV DEVPI_CLIENT_VERSION $ARG_DEVPI_CLIENT_VERSION
|
|
ENV PIP_NO_CACHE_DIR="off"
|
|
ENV PIP_INDEX_URL="https://pypi.python.org/simple"
|
|
ENV PIP_TRUSTED_HOST="127.0.0.1"
|
|
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 virtualenv \
|
|
&& virtualenv $VIRTUAL_ENV \
|
|
&& $VIRTUAL_ENV/bin/pip install pip==$PYTHON_PIP_VERSION
|
|
ENV PATH $VIRTUAL_ENV/bin:$PATH
|
|
|
|
RUN pip install \
|
|
"devpi-client==${DEVPI_CLIENT_VERSION}" \
|
|
"devpi-web==${DEVPI_WEB_VERSION}" \
|
|
"devpi-server==${DEVPI_SERVER_VERSION}"
|
|
|
|
EXPOSE 3141
|
|
VOLUME /data
|
|
|
|
COPY docker-entrypoint.sh /docker-entrypoint.sh
|
|
RUN chmod +x /docker-entrypoint.sh
|
|
|
|
USER devpi
|
|
ENV HOME /data
|
|
WORKDIR /data
|
|
|
|
ENTRYPOINT ["/docker-entrypoint.sh"]
|
|
CMD ["devpi"]
|