1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677 |
- FROM debian:jessie
- ENV PYTHONIOENCODING UTF-8
- RUN apt-get update && apt-get install -y \
- build-essential \
- curl \
- git \
- libbz2-dev \
- libcurl4-openssl-dev \
- libmemcached-dev \
- libncurses5-dev \
- libreadline-dev \
- libsqlite3-dev \
- libssl-dev \
- pkg-config \
- pypy \
- wget \
- zlib1g-dev
- ENV PROVISIONING /provisioning
- ARG CELERY_USER=developer
- RUN : "${CELERY_USER:?CELERY_USER build argument needs to be set and non-empty.}"
- ENV HOME /home/$CELERY_USER
- ENV PATH="$HOME/.pyenv/bin:$PATH"
- WORKDIR $PROVISIONING
- COPY docker/scripts/install-couchbase.sh .
- RUN sh install-couchbase.sh
- COPY docker/scripts/create-linux-user.sh .
- RUN sh create-linux-user.sh
- USER $CELERY_USER
- COPY docker/scripts/install-pyenv.sh .
- RUN sh install-pyenv.sh
- WORKDIR $HOME
- COPY --chown=1000:1000 requirements $HOME/requirements
- COPY --chown=1000:1000 docker/entrypoint /entrypoint
- RUN chmod gu+x /entrypoint
- RUN pyenv local python2.7 python3.4 python3.5 python3.6
- RUN pyenv exec pip install \
- -r requirements/default.txt \
- -r requirements/docs.txt \
- -r requirements/pkgutils.txt \
- -r requirements/test.txt \
- -r requirements/test-ci-base.txt \
- -r requirements/test-integration.txt
- COPY --chown=1000:1000 MANIFEST.in Makefile setup.py setup.cfg tox.ini $HOME/
- COPY --chown=1000:1000 docs $HOME/docs
- COPY --chown=1000:1000 t $HOME/t
- COPY --chown=1000:1000 celery $HOME/celery
- RUN pyenv exec pip install -e .
- ENTRYPOINT ["/entrypoint"]
|