58 lines
1.5 KiB
YAML
58 lines
1.5 KiB
YAML
services:
|
|
db:
|
|
image: postgres:15
|
|
environment:
|
|
POSTGRES_DB: ${POSTGRES_DB}
|
|
POSTGRES_USER: ${POSTGRES_USER}
|
|
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD}
|
|
volumes:
|
|
- postgres_data:/var/lib/postgresql/data
|
|
ports:
|
|
- "${POSTGRES_PORT:-5432}:5432"
|
|
healthcheck:
|
|
test: ["CMD-SHELL", "pg_isready -U ${POSTGRES_USER}"]
|
|
interval: 10s
|
|
timeout: 5s
|
|
retries: 5
|
|
|
|
pgadmin:
|
|
image: dpage/pgadmin4:latest
|
|
environment:
|
|
PGADMIN_DEFAULT_EMAIL: ${PGADMIN_EMAIL}
|
|
PGADMIN_DEFAULT_PASSWORD: ${PGADMIN_PASSWORD}
|
|
ports:
|
|
- "${PGADMIN_PORT:-5050}:80"
|
|
depends_on:
|
|
- db
|
|
volumes:
|
|
- pgadmin_data:/var/lib/pgadmin
|
|
|
|
timetrack:
|
|
build: .
|
|
ports:
|
|
- "${TIMETRACK_PORT:-5000}:5000"
|
|
environment:
|
|
- DATABASE_URL=${DATABASE_URL}
|
|
- POSTGRES_HOST=db
|
|
- POSTGRES_DB=${POSTGRES_DB}
|
|
- POSTGRES_USER=${POSTGRES_USER}
|
|
- POSTGRES_PASSWORD=${POSTGRES_PASSWORD}
|
|
- FLASK_ENV=${FLASK_ENV}
|
|
- SECRET_KEY=${SECRET_KEY}
|
|
- MAIL_SERVER=${MAIL_SERVER}
|
|
- MAIL_USERNAME=${MAIL_USERNAME}
|
|
- MAIL_PASSWORD=${MAIL_PASSWORD}
|
|
- MAIL_DEFAULT_SENDER=${MAIL_DEFAULT_SENDER}
|
|
- RECAPTCHA_SITE_KEY=${RECAPTCHA_SITE_KEY}
|
|
- RECAPTCHA_SECRET_KEY=${RECAPTCHA_SECRET_KEY}
|
|
- RECAPTCHA_ENABLED=${RECAPTCHA_ENABLED}
|
|
depends_on:
|
|
db:
|
|
condition: service_healthy
|
|
volumes:
|
|
- ${DATA_PATH:-./data}:/data
|
|
|
|
volumes:
|
|
postgres_data:
|
|
pgadmin_data:
|
|
shared_socket: |