Severian commited on
Commit
cd6550a
·
verified ·
1 Parent(s): 2b1faec

Update Dockerfile

Browse files
Files changed (1) hide show
  1. Dockerfile +18 -9
Dockerfile CHANGED
@@ -67,12 +67,14 @@ ENV FLASK_APP=app.py \
67
  DIFY_BIND_ADDRESS=0.0.0.0 \
68
  DB_USERNAME=postgres \
69
  DB_PASSWORD=difyai123456 \
70
- DB_HOST=db \
71
  DB_PORT=5432 \
72
  DB_DATABASE=dify \
73
- REDIS_HOST=redis \
74
  REDIS_PORT=6379 \
75
  REDIS_PASSWORD=difyai123456 \
 
 
76
  HOME=/home/user \
77
  PATH=/home/user/.local/bin:$PATH \
78
  PYTHONPATH=/app/api \
@@ -81,19 +83,26 @@ ENV FLASK_APP=app.py \
81
  USER user
82
  EXPOSE 7860 3000
83
 
84
- # Create startup script with corrected paths
85
  RUN echo '#!/bin/bash\n\
86
  echo "===== Application Startup at $(date "+%Y-%m-%d %H:%M:%S") ====="\n\
87
- echo "Starting Dify services..."\n\
 
 
 
 
 
 
 
 
 
 
 
 
88
  \n\
89
  # Run database migrations\n\
90
  cd /app/api && poetry run python -m flask db upgrade\n\
91
  \n\
92
- # Start Celery worker\n\
93
- cd /app/api && poetry run python -m celery -A app.celery worker \
94
- -P gevent -c 1 --loglevel INFO \
95
- -Q dataset,generation,mail,ops_trace,app_deletion &\n\
96
- \n\
97
  # Start API server\n\
98
  cd /app/api && poetry run python -m gunicorn app:app \
99
  --bind ${DIFY_BIND_ADDRESS:-0.0.0.0}:${DIFY_PORT:-7860} \
 
67
  DIFY_BIND_ADDRESS=0.0.0.0 \
68
  DB_USERNAME=postgres \
69
  DB_PASSWORD=difyai123456 \
70
+ DB_HOST=localhost \
71
  DB_PORT=5432 \
72
  DB_DATABASE=dify \
73
+ REDIS_HOST=localhost \
74
  REDIS_PORT=6379 \
75
  REDIS_PASSWORD=difyai123456 \
76
+ CELERY_BROKER_URL=amqp://guest:guest@localhost:5672// \
77
+ CELERY_RESULT_BACKEND=redis://localhost:6379/0 \
78
  HOME=/home/user \
79
  PATH=/home/user/.local/bin:$PATH \
80
  PYTHONPATH=/app/api \
 
83
  USER user
84
  EXPOSE 7860 3000
85
 
86
+ # Create startup script with connection retries
87
  RUN echo '#!/bin/bash\n\
88
  echo "===== Application Startup at $(date "+%Y-%m-%d %H:%M:%S") ====="\n\
89
+ \n\
90
+ # Wait for database\n\
91
+ max_tries=30\n\
92
+ count=0\n\
93
+ while ! pg_isready -h $DB_HOST -p $DB_PORT -U $DB_USERNAME; do\n\
94
+ echo "Waiting for database connection..."\n\
95
+ sleep 2\n\
96
+ count=$((count+1))\n\
97
+ if [ $count -gt $max_tries ]; then\n\
98
+ echo "Failed to connect to database after $max_tries attempts"\n\
99
+ exit 1\n\
100
+ fi\n\
101
+ done\n\
102
  \n\
103
  # Run database migrations\n\
104
  cd /app/api && poetry run python -m flask db upgrade\n\
105
  \n\
 
 
 
 
 
106
  # Start API server\n\
107
  cd /app/api && poetry run python -m gunicorn app:app \
108
  --bind ${DIFY_BIND_ADDRESS:-0.0.0.0}:${DIFY_PORT:-7860} \