fp/docker-compose.yml

89 lines
2.4 KiB
YAML

services:
opentracker:
image: anthonyzou/opentracker:latest
ports:
- "6969:6969/tcp"
- "6969:6969/udp"
volumes:
- ./packages/opentracker/opentracker.conf:/etc/opentracker.conf:ro
bright:
container_name: bright
build:
context: .
dockerfile: dockerfiles/bright.dockerfile
target: dev
args:
- MIX_ENV=dev
environment:
MIX_ENV: dev
PORT: "4000"
DATABASE_HOSTNAME: db
SUPERSTREAMER_URL: http://superstreamer-api:52001
PUBLIC_S3_ENDPOINT: https://fp-dev.b-cdn.net
env_file:
- .kamal/secrets.development
ports:
- '4000:4000'
depends_on:
- db
# volumes:
# - ./services/bright/lib:/app/lib
# volumes:
# - /home/cj/Documents/ueberauth_patreon:/app/contrib/ueberauth_patreon
develop:
watch:
- path: ./services/bright/
target: /app/
action: sync
- path: ./services/bright/application.ex
target: /app/lib/bright/application.ex
action: sync+restart
- path: ./services/bright/config/config.exs
target: /app/lib/bright/config/config.exs
action: sync+restart
- path: ./services/bright/config/runtime.exs
target: /app/lib/bright/config/runtime.exs
action: sync+restart
# @todo we need "docker@27.5.0" in devbox.json because we need docker compose >= `v2.32.0` for `sync+exec` feature.
# For now, we don't have `sync+exec` support which means docker image rebuilds are required when updating mix.exs
# - path: ./services/bright/mix.exs
# action: sync+exec
# target: /app/mix.exs
# exec:
# command: mix deps.get
- path: ./services/bright/mix.exs
target: /app/mix.exs
action: sync+restart
# - path: /home/cj/Documents/ueberauth_patreon
# action: sync
# target: /app/contrib/ueberauth_patreon
db:
image: postgres:15
container_name: futureporn-db
environment:
POSTGRES_USER: postgres
POSTGRES_PASSWORD: password
POSTGRES_DB: bright
volumes:
- pg_data:/var/lib/postgresql/data
ports:
- '5432:5432'
pgadmin:
image: dpage/pgadmin4
ports:
- '5050:5050'
depends_on:
- db
environment:
PGADMIN_LISTEN_PORT: "5050"
env_file:
- .kamal/secrets.development
volumes:
pg_data:
redis_data: