Lea*_*cia -1 docker docker-compose
当我在 Dockerfile arg 中设置默认值时,无法覆盖 docker-compose.yml 中的 Dockerfile arg。
如果用户只是运行 de Dockerfile,去掉任何参数,我希望 docker 不会中断,并且在 docker-compose.yml 中我想设置一个更好的架构。
这是我的 Dockerfile:
FROM python:3.6 as flask_api
LABEL maintainer 'https://about.me/leandro.garcias'
ARG DEBUG=False
# BD Config
ARG DATABASE_URL='sqlite:///data/app.db'
# Max register per page, when you try to get all
ARG MAX_PER_PAGE=25
# Collect log errors. https://sentry.io
ARG COLLECT_LOG_ERRORS=False
ARG SENTRY_DSN=''
RUN adduser api
USER api
WORKDIR /home/api
COPY requirements.txt manage.py contrib/boot.sh ./
COPY tests tests
COPY app app
RUN mkdir data
ENV PYTHONUNBUFFERED 1
ENV DEBUG $DEBUG
ENV DATABASE_URL $DATABASE_URL
ENV MAX_PER_PAGE $MAX_PER_PAGE
ENV COLLECT_LOG_ERRORS $COLLECT_LOG_ERRORS
ENV SENTRY_DSN $SENTRY_DSN
RUN python -m venv venv
RUN venv/bin/pip install -r requirements.txt
CMD bash boot.sh
EXPOSE 5000:5000
Run Code Online (Sandbox Code Playgroud)
这是我的 docker-compose.yml:
version: '3'
volumes:
local_data:
data:
networks:
web:
app:
db:
services:
frontend:
image: nginx:1.13
volumes:
- ./contrib/nginx.conf:/etc/nginx/conf.d/default.conf
ports:
- 80:80
networks:
- web
- app
depends_on:
- app
app:
image: flask_api
restart: always
volumes:
- local_data:/home/api/data
networks:
- app
- db
depends_on:
- db
build:
context: .
args:
- DEBUG = False
# BD Config
- DATABASE_URL = postgres://postgres:@db:5432/people
# Max register per page, when you try to get all
- MAX_PER_PAGE = 25
# Collect log errors. https://sentry.io
- COLLECT_LOG_ERRORS = False
- SENTRY_DSN = ''
db:
image: postgres:9.6
volumes:
- data:/var/lib/postgresql/data
networks:
- db
environment:
- POSTGRES_DB=people
Run Code Online (Sandbox Code Playgroud)
我需要帮助 ...
我找到了解决办法!只需要设置环境值即可。:-)
app:
image: flask_api
environment:
- DEBUG=False
# BD Config
- DATABASE_URL=postgres://postgres:@db:5432/people
# Max register per page, when you try to get all
- MAX_PER_PAGE=25
# Collect log errors. https://sentry.io
- COLLECT_LOG_ERRORS=False
- SENTRY_DSN=''
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3357 次 |
| 最近记录: |