generated from alphane/template
121 lines
2.9 KiB
YAML
121 lines
2.9 KiB
YAML
x-default-environment: &default-environment
|
|
TZ: "UTC"
|
|
NODE_ENV: development
|
|
DB_HOST: db
|
|
DB_USERNAME: &default-db-username alphane
|
|
DB_DATABASE: alphane_development
|
|
DB_PASSWORD: &default-db-password DevPwd99!
|
|
DB_PORT: &default-db-port 5432
|
|
DB_TRUST_SERVER_CERTIFICATE: "true"
|
|
DB_HEALTH_CHECK_INTERVAL_SECONDS: 5
|
|
DB_HEALTH_CHECK_TIMEOUT_SECONDS: 10
|
|
DB_HEALTH_CHECK_RETRIES: 3
|
|
DB_HEALTH_CHECK_START_PERIOD_SECONDS: 5
|
|
FRONTEND_URL: "http://localhost:8080"
|
|
VITE_APPLICATION_NAME: "ALPHANE"
|
|
VITE_API_BASE_URL: "http://localhost:3000"
|
|
VITE_AUTH0_CLIENT_ID: "TRlKzdNBynpo9tU1RSmnF0p8d3IEam4J"
|
|
VITE_AUTH0_AUDIENCE: "alphane-api"
|
|
VITE_AUTH0_DOMAIN: "https://dev-7mdjzcgwirhocfwm.ca.auth0.com"
|
|
RELEASE_TAG: "${RELEASE_TAG:-development}"
|
|
GIT_COMMIT_HASH: "${GIT_COMMIT_HASH:-not-set}"
|
|
|
|
services:
|
|
api:
|
|
build:
|
|
context: ./api
|
|
dockerfile: development.Dockerfile
|
|
image: wrap-api:latest
|
|
env_file:
|
|
- ./api/.env.development
|
|
environment:
|
|
<<: *default-environment
|
|
tty: true # allows attaching debugger, equivalent of docker exec -t
|
|
# stdin_open: true # equivalent of docker exec -i
|
|
ports:
|
|
- "3000:3000"
|
|
- "9229:9229"
|
|
volumes:
|
|
- ./api:/usr/src/api
|
|
- ./.gitignore:/usr/src/.gitignore
|
|
- ./.prettierrc.yaml:/usr/src/.prettierrc.yaml
|
|
depends_on:
|
|
- db
|
|
|
|
web:
|
|
build:
|
|
context: ./web
|
|
dockerfile: development.Dockerfile
|
|
environment:
|
|
<<: *default-environment
|
|
ports:
|
|
- "8080:8080"
|
|
volumes:
|
|
- ./web:/usr/src/web
|
|
- ./.gitignore:/usr/src/.gitignore
|
|
- ./.prettierrc.yaml:/usr/src/.prettierrc.yaml
|
|
depends_on:
|
|
- api
|
|
|
|
test_api:
|
|
build:
|
|
context: ./api
|
|
dockerfile: development.Dockerfile
|
|
command: /bin/true
|
|
env_file:
|
|
- ./api/.env.development
|
|
environment:
|
|
<<: *default-environment
|
|
NODE_ENV: test
|
|
DB_DATABASE: alphane_test
|
|
DEFAULT_LOG_LEVEL: "info"
|
|
DB_HEALTH_CHECK_START_PERIOD_SECONDS: 0
|
|
tty: true
|
|
volumes:
|
|
- ./api:/usr/src/api
|
|
depends_on:
|
|
- db
|
|
profiles:
|
|
- test
|
|
|
|
test_web:
|
|
build:
|
|
context: ./web
|
|
dockerfile: development.Dockerfile
|
|
command: /bin/true
|
|
environment:
|
|
<<: *default-environment
|
|
NODE_ENV: test
|
|
tty: true
|
|
volumes:
|
|
- ./web:/usr/src/web
|
|
profiles:
|
|
- test
|
|
|
|
db:
|
|
image: postgres:17.6
|
|
user: root
|
|
environment:
|
|
<<: *default-environment
|
|
POSTGRES_USER: *default-db-username
|
|
POSTGRES_PASSWORD: *default-db-password
|
|
ports:
|
|
- "5432:5432"
|
|
volumes:
|
|
- pg-data:/var/lib/postgresql/data
|
|
|
|
# For easily generating large PlantUML diagrams
|
|
# Not relevant to production environment.
|
|
# Accessible at http://localhost:9999
|
|
plantuml:
|
|
image: plantuml/plantuml-server:jetty
|
|
ports:
|
|
- 9999:8080
|
|
environment:
|
|
PLANTUML_LIMIT_SIZE: 8192
|
|
profiles:
|
|
- design
|
|
|
|
volumes:
|
|
pg-data:
|