Contesto: docker-compose per avviare diversi container, incluso Gunicorn che chiama un'app Flask. Sto usando un file di ambiente web/env.gunicornper memorizzare la mia configurazione di avvio di Gunicorn. Questo file contiene
GUNICORN_CMD_ARGS="--bind=127.0.0.1:8001 --workers=3"
Il problema è che GUNICORN_CMD_ARGSnon viene elaborato correttamente da qualche parte nella pipeline. L'errore che ricevo quando corro docker logs gunicornè
Error: '8001 --workers=3' is not a valid port number.
La domanda è: dove nella mia configurazione sono sbagliati i miei presupposti, causando in tal modo la modifica della variabile d'ambiente? La variabile di ambiente viene accettata quando eseguita manualmente in un terminale. Il file di composizione della finestra mobile appare come segue
version: "3"
services:
# nginx:
# image: nginx:latest
# ports:
# - "80:80"
# volumes:
# - ./nginx:/etc/nginx/conf.d
# depends_on:
# - web
web:
build: ./web
container_name: gunicorn
ports:
- "8001:8001"
environment:
- APP_CONFIG_FILE=../config/development.py
env_file:
- 'web/env.gunicorn'
networks:
- backend
command: gunicorn thymedata:app
depends_on:
- influxdb
- grafana
influxdb:
image: influxdb:latest
container_name: influxdb
ports:
- "8086:8086"
env_file:
- 'influxdb/env.influxdb'
- 'influxdb/secrets.influxdb'
networks:
- backend
volumes:
- influxdb-data:/var/lib/influxdb
grafana:
image: grafana/grafana:latest
container_name: grafana
ports:
- "3000:3000"
env_file:
- 'grafana/env.grafana'
- 'grafana/secrets.grafana'
networks:
- backend
volumes:
- grafana-data:/var/lib/grafana
depends_on:
- influxdb
networks:
backend:
volumes:
influxdb-data:
grafana-data:
GUNICORN_CMD_ARGSset, e lo ha accettato correttamente (numero di lavoratori e indirizzo controllato). Ecco perché suppongo che il problema sia dalla parte di Docker.
ERROR: build path /home/ben/devopsStackExchange/web either does not exist, is not accessible, or is not a valid URL.. Si prega di creare un steps to reproduce paragraphe aggiungere i file richiesti in modo che altre persone possano aiutarti aiutandoli almeno a riprodurre il problema.
command: gunicorn thymedata:app --bind=127.0.0.1:8001 --workers=3versione, poiché le variabili caricate tramite env_filenon sono accettate. Devono essere già impostati nel terminale di chiamata.