63 lines
1.4 KiB
YAML
63 lines
1.4 KiB
YAML
---
|
|
name: '${SLAX_NAME:-slax}'
|
|
|
|
include:
|
|
- path: priv/docker/services/database/docker-compose.yml
|
|
- path: priv/docker/services/otel/docker-compose.yml
|
|
|
|
services:
|
|
slax:
|
|
image: 'joaodubas/slax:${SLAX_TAG:-dev}'
|
|
build:
|
|
context: .
|
|
target: builder
|
|
args:
|
|
BUILD_MIX_ENV: dev
|
|
init: true
|
|
restart: unless-stopped
|
|
hostname: slax
|
|
networks:
|
|
- default
|
|
- upstream
|
|
environment:
|
|
PGUSER: postgres
|
|
PGPASSWORD: postgres
|
|
PGHOST: database
|
|
volumes:
|
|
- './:/app'
|
|
- 'slax_build:/app/_build'
|
|
- 'slax_deps:/app/deps'
|
|
labels:
|
|
caddy: ${SLAX_DOMAIN:-slax.dubas.lan}
|
|
caddy.0_import: base_config
|
|
caddy.1_import: tls_config
|
|
caddy.2_reverse_proxy: '{{ upstreams http 4000 }}'
|
|
caddy.2_reverse_proxy.import: proxy_headers_config
|
|
entrypoint: mix
|
|
command: phx.server
|
|
slax-production:
|
|
image: 'joaodubas/slax:${SLAX_PROD_TAG:-prod}'
|
|
build:
|
|
context: .
|
|
init: true
|
|
restart: unless-stopped
|
|
hostname: slax-prod-local
|
|
networks:
|
|
- upstream
|
|
environment:
|
|
DATABASE_URL: 'postgresql://postgres:postgres@database:5432/slax'
|
|
SECRET_KEY_BASE: '${SLAX_PROD_SECRET_KEY_BASE:-LkNDN0Rt87ElBj2FEQGNtsdqCjkBxgOFrxh/I7OYg4ZY8uzAgKtKnRMEHnt+5SSF}'
|
|
profiles:
|
|
- production
|
|
entrypoint: sleep
|
|
command: infinity
|
|
|
|
volumes:
|
|
slax_build: {}
|
|
slax_deps: {}
|
|
|
|
networks:
|
|
upstream:
|
|
external: true
|
|
name: proxy_upstream
|