65 lines
1.8 KiB
YAML
65 lines
1.8 KiB
YAML
version: '3.8'
|
|
|
|
services:
|
|
meridian:
|
|
container_name: meridian
|
|
image: aboveu/meridian:latest
|
|
env_file:
|
|
- .env
|
|
ports:
|
|
- "3000:3000"
|
|
depends_on:
|
|
- postgres
|
|
- flighttime
|
|
networks:
|
|
- internal
|
|
- proxy
|
|
labels:
|
|
## Expose Meridian Through Trefik ##
|
|
- "traefik.enable=true" # <== Enable traefik to proxy this container
|
|
|
|
- "traefik.http.middlewares.redirect-web-secure.redirectscheme.scheme=https"
|
|
- "traefik.http.routers.meridian-insecure.middlewares=redirect-web-secure"
|
|
- "traefik.http.routers.meridian-insecure.rule=Host(`meridian.luke-else.co.uk`)"
|
|
- "traefik.http.routers.meridian-insecure.entrypoints=web"
|
|
|
|
- "traefik.http.routers.meridian.rule=Host(`meridian.luke-else.co.uk`)"
|
|
- "traefik.http.routers.meridian.entrypoints=websecure"
|
|
- "traefik.http.routers.meridian.tls.certresolver=myresolver"
|
|
restart: unless-stopped
|
|
|
|
postgres:
|
|
container_name: postgres
|
|
image: postgres:16
|
|
env_file:
|
|
- .env
|
|
environment:
|
|
POSTGRES_DB: ${POSTGRES_DB}
|
|
POSTGRES_USER: ${POSTGRES_USER}
|
|
POSTGRES_PASSWORD: ${POSTGRES_PASS}
|
|
volumes:
|
|
- pgdata:/var/lib/postgresql/data
|
|
- ./scripts/init_db.sql:/docker-entrypoint-initdb.d/1-init_db.sql:ro
|
|
- ./scripts/core_migration.sql:/docker-entrypoint-initdb.d/2-core_migrations.sql:ro
|
|
- ./scripts/airline_alliances.sql:/docker-entrypoint-initdb.d/3-airline_alliances.sql:ro
|
|
networks:
|
|
- internal
|
|
restart: unless-stopped
|
|
|
|
flighttime:
|
|
container_name: flighttime
|
|
image: aboveu/flighttime:latest
|
|
ports:
|
|
- "5000:5000"
|
|
networks:
|
|
- internal
|
|
restart: unless-stopped
|
|
|
|
volumes:
|
|
pgdata:
|
|
|
|
networks:
|
|
internal:
|
|
driver: bridge
|
|
proxy:
|
|
external: true |