Update docker-compose.yaml

This commit is contained in:
Cameron 2025-12-11 06:15:17 +00:00
parent fca3401d12
commit ba40390b09

View file

@ -1,39 +1,65 @@
services:
db:
container_name: postgres_container
image: postgres:15.15
container_name: db-airflow
image: 'postgres:15.15'
environment:
POSTGRES_USER: ${POSTGRES_USER}
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD}
POSTGRES_DB: ${POSTGRES_DB}
POSTGRES_USER: '${POSTGRES_USER}'
POSTGRES_PASSWORD: '${POSTGRES_PASSWORD}'
POSTGRES_DB: '${POSTGRES_DB}'
volumes:
- postgres_data:/var/lib/postgresql/data
- 'airflow-postgres_data:/var/lib/postgresql/data'
restart: unless-stopped
networks:
airflow_network: null
labels:
- coolify.managed=true
- coolify.version=4.0.0-beta.323
- coolify.applicationId=17
- coolify.type=application
- coolify.name=db-airflow
airflow:
container_name: airflow_container
image: apache/airflow:3.1.3
container_name: airflow
image: 'apache/airflow:3.1.3'
depends_on:
- db
environment:
AIRFLOW__DATABASE__SQL_ALCHEMY_CONN: postgresql+psycopg2://${POSTGRES_USER}:${POSTGRES_PASSWORD}@db:5432/${POSTGRES_DB}
AIRFLOW__CORE__LOAD_EXAMPLES: "false"
AIRFLOW__DATABASE__SQL_ALCHEMY_CONN: 'postgresql+psycopg2://${POSTGRES_USER}:${POSTGRES_PASSWORD}@db:5432/${POSTGRES_DB}'
AIRFLOW__CORE__LOAD_EXAMPLES: 'false'
AIRFLOW__CORE__EXECUTOR: LocalExecutor
AIRFLOW__WEBSERVER__EXPOSE_CONFIG: "true"
AIRFLOW__WEBSERVER__EXPOSE_CONFIG: 'true'
AIRFLOW__CORE__DAGS_FOLDER: /opt/airflow/dags
volumes:
- ./airflow/dags:/opt/airflow/dags
- ./airflow/logs:/opt/airflow/logs
- ./airflow/plugins:/opt/airflow/plugins
- '/data/coolify/applications/airflow/dags:/opt/airflow/dags'
- '/data/coolify/applications/airflow/logs:/opt/airflow/logs'
- '/data/coolify/applications/airflow/plugins:/opt/airflow/plugins'
command: >
bash -c "
airflow db migrate &&
airflow scheduler &
exec airflow api-server --port 8080
"
bash -c "airflow db migrate && airflow scheduler & exec airflow api-server --port 8080"
restart: unless-stopped
networks:
airflow_network: null
labels:
- traefik.enable=true
- traefik.http.routers.airflow-http.entrypoints=http
- traefik.http.routers.airflow-http.rule=Host(`airflow.camcodes.dev`)
- traefik.http.routers.airflow-http.middlewares=redirect-to-https
- traefik.http.routers.airflow-https.entrypoints=https
- traefik.http.routers.airflow-https.rule=Host(`airflow.camcodes.dev`)
- traefik.http.routers.airflow-https.tls=true
- traefik.http.routers.airflow-https.tls.certresolver=letsencrypt
- traefik.http.services.airflow.loadbalancer.server.port=8080
- traefik.http.middlewares.redirect-to-https.redirectscheme.scheme=https
- coolify.managed=true
- coolify.version=4.0.0-beta.323
- coolify.applicationId=17
- coolify.type=application
- coolify.name=airflow
volumes:
postgres_data:
airflow_logs:
airflow_plugins:
airflow-postgres_data:
name: airflow-postgres_data
networks:
airflow_network:
name: airflow_network
external: true