2021-10-15 22:16:45 +02:00
|
|
|
ARG DOCKER_REGISTRY="registry.gitlab.com/grassrootseconomics"
|
|
|
|
|
2021-10-20 10:07:19 +02:00
|
|
|
FROM $DOCKER_REGISTRY/cic-base-images:python-3.8.6-dev-e8eb2ee2
|
2021-02-01 18:12:51 +01:00
|
|
|
|
2021-07-10 17:46:14 +02:00
|
|
|
# Copy just the requirements and install....this _might_ give docker a hint on caching but we
|
|
|
|
# do load these all into setup.py later
|
|
|
|
# TODO can we take all the requirements out of setup.py and just do a pip install -r requirements.txt && python setup.py
|
|
|
|
#COPY cic-eth/requirements.txt .
|
2021-02-01 18:12:51 +01:00
|
|
|
|
2021-10-16 08:23:32 +02:00
|
|
|
ARG EXTRA_PIP_INDEX_URL=https://pip.grassrootseconomics.net:8433
|
2021-08-24 23:07:36 +02:00
|
|
|
ARG EXTRA_PIP_ARGS=""
|
2021-10-16 08:23:32 +02:00
|
|
|
ARG PIP_INDEX_URL=https://pypi.org/simple
|
2021-10-15 22:16:45 +02:00
|
|
|
|
2021-10-19 22:58:10 +02:00
|
|
|
RUN --mount=type=cache,mode=0755,target=/root/.cache/pip \
|
|
|
|
pip install --index-url $PIP_INDEX_URL \
|
2021-10-15 22:16:45 +02:00
|
|
|
--pre \
|
|
|
|
--extra-index-url $EXTRA_PIP_INDEX_URL $EXTRA_PIP_ARGS \
|
2021-10-15 23:11:00 +02:00
|
|
|
cic-eth-aux-erc20-demurrage-token~=0.0.2a7
|
2021-09-06 21:07:57 +02:00
|
|
|
|
|
|
|
|
2021-07-21 19:34:51 +02:00
|
|
|
COPY *requirements.txt ./
|
2021-10-19 22:58:10 +02:00
|
|
|
RUN --mount=type=cache,mode=0755,target=/root/.cache/pip \
|
|
|
|
pip install --index-url $PIP_INDEX_URL \
|
2021-10-15 22:16:45 +02:00
|
|
|
--pre \
|
|
|
|
--extra-index-url $EXTRA_PIP_INDEX_URL $EXTRA_PIP_ARGS \
|
2021-07-11 19:08:04 +02:00
|
|
|
-r requirements.txt \
|
|
|
|
-r services_requirements.txt \
|
2021-09-09 14:27:47 +02:00
|
|
|
-r admin_requirements.txt
|
2021-10-16 08:23:32 +02:00
|
|
|
|
2021-07-11 19:08:04 +02:00
|
|
|
COPY . .
|
|
|
|
RUN python setup.py install
|
2021-02-01 18:12:51 +01:00
|
|
|
|
2021-07-10 17:46:14 +02:00
|
|
|
ENV PYTHONPATH .
|
2021-05-25 18:22:26 +02:00
|
|
|
|
2021-08-17 08:46:51 +02:00
|
|
|
|
2021-07-10 17:46:14 +02:00
|
|
|
COPY docker/entrypoints/* ./
|
|
|
|
RUN chmod 755 *.sh
|
2021-05-25 18:22:26 +02:00
|
|
|
|
2021-07-10 17:46:14 +02:00
|
|
|
# # ini files in config directory defines the configurable parameters for the application
|
|
|
|
# # they can all be overridden by environment variables
|
|
|
|
# # to generate a list of environment variables from configuration, use: confini-dump -z <dir> (executable provided by confini package)
|
2021-10-15 18:52:37 +02:00
|
|
|
#COPY config/ /usr/local/etc/cic-eth/
|
2021-07-10 17:46:14 +02:00
|
|
|
COPY cic_eth/db/migrations/ /usr/local/share/cic-eth/alembic/
|
|
|
|
COPY crypto_dev_signer_config/ /usr/local/etc/crypto-dev-signer/
|
2021-05-25 18:22:26 +02:00
|
|
|
|
2021-07-10 17:46:14 +02:00
|
|
|
# TODO this kind of code sharing across projects should be discouraged...can we make util a library?
|
|
|
|
#COPY util/liveness/health.sh /usr/local/bin/health.sh
|
|
|
|
ENTRYPOINT []
|
2021-05-25 18:22:26 +02:00
|
|
|
|
2021-07-11 18:51:08 +02:00
|
|
|
## ------------------ PRODUCTION CONTAINER ----------------------
|
|
|
|
#FROM python:3.8.6-slim-buster as prod
|
|
|
|
#
|
|
|
|
#RUN apt-get update && \
|
|
|
|
# apt install -y gnupg libpq-dev procps
|
|
|
|
#
|
|
|
|
#WORKDIR /root
|
|
|
|
#
|
|
|
|
#COPY --from=dev /usr/local/bin/ /usr/local/bin/
|
|
|
|
#COPY --from=dev /usr/local/lib/python3.8/site-packages/ \
|
|
|
|
# /usr/local/lib/python3.8/site-packages/
|
|
|
|
#
|
|
|
|
#COPY docker/entrypoints/* ./
|
|
|
|
#RUN chmod 755 *.sh
|
|
|
|
#
|
|
|
|
## # ini files in config directory defines the configurable parameters for the application
|
|
|
|
## # they can all be overridden by environment variables
|
|
|
|
## # to generate a list of environment variables from configuration, use: confini-dump -z <dir> (executable provided by confini package)
|
|
|
|
#COPY config/ /usr/local/etc/cic-eth/
|
|
|
|
#COPY cic_eth/db/migrations/ /usr/local/share/cic-eth/alembic/
|
|
|
|
#COPY crypto_dev_signer_config/ /usr/local/etc/crypto-dev-signer/
|
|
|
|
#COPY scripts/ scripts/
|
|
|
|
#
|
|
|
|
## TODO this kind of code sharing across projects should be discouraged...can we make util a library?
|
|
|
|
##COPY util/liveness/health.sh /usr/local/bin/health.sh
|
|
|
|
#
|
|
|
|
#ENTRYPOINT []
|
2021-05-25 18:22:26 +02:00
|
|
|
|