updates
This commit is contained in:
@ -1,4 +1,3 @@
|
||||
version: '3.8'
|
||||
services:
|
||||
web:
|
||||
build: .
|
||||
@ -9,4 +8,72 @@ services:
|
||||
environment:
|
||||
- FLASK_APP=app
|
||||
- FLASK_ENV=development
|
||||
- DATABASE_URL=sqlite:///data.db
|
||||
- USE_REMOTE_MYSQL=${USE_REMOTE_MYSQL}
|
||||
- ENABLE_DB_SEEDING=${ENABLE_DB_SEEDING}
|
||||
- MYSQL_DATABASE=${MYSQL_DATABASE}
|
||||
- MYSQL_USER=${MYSQL_USER}
|
||||
- MYSQL_PASSWORD=${MYSQL_PASSWORD}
|
||||
- MYSQL_HOST=${MYSQL_HOST}
|
||||
- MYSQL_PORT=${MYSQL_PORT}
|
||||
depends_on:
|
||||
- db
|
||||
healthcheck:
|
||||
test: ["CMD", "curl", "-f", "http://localhost:5000"]
|
||||
interval: 30s
|
||||
timeout: 10s
|
||||
retries: 5
|
||||
command: >
|
||||
bash -c "
|
||||
set -e
|
||||
|
||||
echo '[✔] Ensuring .env...'
|
||||
if [ ! -f '.env' ]; then cp .env.example .env; fi
|
||||
|
||||
echo '[✔] Waiting for MySQL to be ready...'
|
||||
until nc -z ${MYSQL_HOST} ${MYSQL_PORT}; do sleep 1; done
|
||||
|
||||
echo '[✔] Running DB migrations...'
|
||||
flask db upgrade
|
||||
|
||||
if [ \"$$ENABLE_DB_SEEDING\" = \"1\" ]; then
|
||||
echo '[🌱] Seeding admin user...'
|
||||
flask seed-admin
|
||||
else
|
||||
echo '[⚠️] DB seeding skipped by config.'
|
||||
fi
|
||||
|
||||
echo '[🚀] Starting Flask server...'
|
||||
flask run --host=0.0.0.0
|
||||
"
|
||||
|
||||
db:
|
||||
image: mysql:8
|
||||
restart: unless-stopped
|
||||
environment:
|
||||
MYSQL_ROOT_PASSWORD: ${MYSQL_ROOT_PASSWORD}
|
||||
MYSQL_DATABASE: ${MYSQL_DATABASE}
|
||||
MYSQL_USER: ${MYSQL_USER}
|
||||
MYSQL_PASSWORD: ${MYSQL_PASSWORD}
|
||||
ports:
|
||||
- "3306:3306"
|
||||
volumes:
|
||||
- plant_price_tracker_mysql_data:/var/lib/mysql
|
||||
healthcheck:
|
||||
test: ["CMD", "mysqladmin", "ping", "-h", "localhost"]
|
||||
interval: 10s
|
||||
timeout: 5s
|
||||
retries: 5
|
||||
|
||||
|
||||
adminer:
|
||||
image: adminer
|
||||
restart: always
|
||||
ports:
|
||||
- 8080:8080
|
||||
environment:
|
||||
ADMINER_DEFAULT_SERVER: db
|
||||
depends_on:
|
||||
- db
|
||||
|
||||
volumes:
|
||||
plant_price_tracker_mysql_data:
|
||||
|
Reference in New Issue
Block a user