Bağlam: Docker-compose, Flask uygulamasını çağıran Gunicorn da dahil olmak üzere birkaç kapsayıcı başlatmak için. web/env.gunicorn
Gunicorn başlangıç yapılandırmamı saklamak için bir ortam dosyası kullanıyorum . Bu dosya içeriyor
GUNICORN_CMD_ARGS="--bind=127.0.0.1:8001 --workers=3"
Sorun, GUNICORN_CMD_ARGS
boru hattının herhangi bir yerinde doğru bir şekilde işlenmemesidir. Hata çalıştırırken ben almak docker logs gunicorn
IS
Error: '8001 --workers=3' is not a valid port number.
Soru, benim kurulumumda varsayımlarımın yanlış olduğu ve böylece ortam değişkeninin karışmasına neden olduğudur. Ortam değişkeni bir terminalde manuel olarak çalıştırıldığında kabul edilir. Docker oluşturma dosyası aşağıdaki gibi görünür
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_ARGS
ve düzgün kabul etti (işçi ve adres kontrol edildi). Bu yüzden sorunun Docker'ın tarafında olduğunu düşünüyorum.
ERROR: build path /home/ben/devopsStackExchange/web either does not exist, is not accessible, or is not a valid URL.
. Lütfen bir kişi oluşturun steps to reproduce paragraph
ve gerekli dosyaları ekleyin, böylece diğer kişiler en azından sorunu yeniden üretmelerine izin vererek size yardımcı olabilir.
command: gunicorn thymedata:app --bind=127.0.0.1:8001 --workers=3
Yüklenen değişkenler env_file
kabul edilmediğinden sürüme sadık kalacağım . Arama terminalinde önceden ayarlanmış olmaları gerekir.