Files
dagster/compose.code.yaml

127 lines
3.6 KiB
YAML

x-dagster-env: &dagster_env
TZ: Europe/Amsterdam
DAGSTER_POSTGRES_HOST: ${POSTGRES_HOST}
DAGSTER_POSTGRES_PORT: ${POSTGRES_PORT}
DAGSTER_POSTGRES_USER: ${POSTGRES_USER}
DAGSTER_POSTGRES_PASSWORD: ${POSTGRES_PASSWORD}
DAGSTER_POSTGRES_DB: ${POSTGRES_DB}
x-email-env: &email_env
SMTP_SERVER: ${SMTP_SERVER}
SMTP_PORT: ${SMTP_PORT}
SMTP_USERNAME: ${SMTP_USERNAME}
SMTP_PASSWORD: ${SMTP_PASSWORD}
SENDER_EMAIL: ${SENDER_EMAIL}
RECEIVER_EMAIL: ${RECEIVER_EMAIL}
services:
# This service runs the gRPC server that loads your user code, in both dagit
# and dagster-daemon. By setting DAGSTER_CURRENT_IMAGE to its own image, we tell the
# run launcher to use this same image when launching runs in a new container as well.
# Multiple containers like this can be deployed separately - each just needs to run on
# its own port, and have its own entry in the workspace.yaml file that's loaded by dagit.
dagster-code-vinyl:
build:
context: apps/vinyl
dockerfile: ../../Dockerfile.code
args:
- APP=vinyl
container_name: dagster-code-vinyl
image: dagster-code-vinyl
restart: always
environment:
<<: [ *dagster_env, *email_env ]
DAGSTER_CURRENT_IMAGE: dagster-code-vinyl
volumes:
- /opt/dagster/apps/:/apps/:ro
- /opt/dagster/shared/:/shared/:ro
- /opt/dagster/logs/:/logs:rw
- /opt/dagster/storage/import/:/storage/import/:ro
- /opt/dagster/storage/deals/:/storage/deals/:rw
networks:
- dagster
dagster-code-stocks:
build:
context: apps/stocks
dockerfile: ../../Dockerfile.code
args:
- APP=stocks
container_name: dagster-code-stocks
image: dagster-code-stocks
restart: always
environment:
<<: [ *dagster_env ]
DAGSTER_CURRENT_IMAGE: dagster-code-stocks
volumes:
- /opt/dagster/apps/:/apps/:ro
- /opt/dagster/shared/:/shared/:ro
- /opt/dagster/logs/:/logs:rw
networks:
- dagster
dagster-code-stocks-playwright:
build:
context: apps/stocks
dockerfile: ../../Dockerfile.code.playwright
args:
- APP=stocks
image: dagster-code-stocks-playwright
profiles: [ "never" ]
dagster-code-tesla:
build:
context: apps/tesla
dockerfile: ../../Dockerfile.code
args:
- APP=tesla
container_name: dagster-code-tesla
image: dagster-code-tesla
restart: always
environment:
<<: [ *dagster_env ]
DAGSTER_CURRENT_IMAGE: dagster-code-tesla
volumes:
- /opt/dagster/apps/:/apps/:ro
- /opt/dagster/shared/:/shared/:ro
- /opt/dagster/logs/:/logs:rw
networks:
- dagster
dagster-code-weather:
build:
context: apps/weather
dockerfile: ../../Dockerfile.code
args:
- APP=weather
container_name: dagster-code-weather
image: dagster-code-weather
restart: always
environment:
<<: [ *dagster_env ]
DAGSTER_CURRENT_IMAGE: dagster-code-weather
volumes:
- /opt/dagster/apps/:/apps/:ro
- /opt/dagster/shared/:/shared/:ro
- /opt/dagster/logs/:/logs:rw
networks:
- dagster
dagster-code-other:
build:
context: apps/other
dockerfile: ../../Dockerfile.code
args:
- APP=other
container_name: dagster-code-other
image: dagster-code-other
restart: always
environment:
<<: [ *dagster_env ]
DAGSTER_CURRENT_IMAGE: dagster-code-other
volumes:
- /opt/dagster/apps/:/apps/:ro
- /opt/dagster/shared/:/shared/:ro
- /opt/dagster/logs/:/logs:rw
networks:
- dagster