This PR contains the latest updates from the generic Website template, which have been added while working on #loud-amsterdam. Reviewed-on: #1 Co-authored-by: Javier Cicchelli <javier@rock-n-code.com>
56 lines
1.9 KiB
YAML
56 lines
1.9 KiB
YAML
# Local development overrides.
|
|
# Compose merges this file on top of docker-compose.yml automatically, so a plain `docker compose up` builds from
|
|
# source instead of pulling a registry image:
|
|
#
|
|
# docker compose up --build # build locally and run
|
|
# docker compose up -d # reuse the last local build
|
|
#
|
|
# It reuses the `image:` name from the base file, so the local build is tagged the same way the production image would
|
|
# be.
|
|
services:
|
|
website:
|
|
image: ${IMAGE_NAME}:${IMAGE_TAG:-latest}
|
|
# The local build targets the development machine, not the deployment: this cancels the base file's
|
|
# ${IMAGE_PLATFORM}. Set BUILD_PLATFORM=linux/amd64 in .env when developing on an Intel Mac or an amd64 Linux box.
|
|
platform: ${BUILD_PLATFORM:-linux/arm64}
|
|
build:
|
|
context: ../..
|
|
dockerfile: Services/Website/Dockerfile
|
|
environment:
|
|
LOG_LEVEL: debug
|
|
HTTPS_TRUST_FORWARDED_PROTO: "false"
|
|
DATABASE_DRIVER: ${DATABASE_DRIVER:-inMemory}
|
|
DATABASE_HOST: postgres
|
|
DATABASE_TLS: ${DATABASE_TLS:-off}
|
|
depends_on:
|
|
postgres:
|
|
condition: service_healthy
|
|
required: false
|
|
|
|
# Local development database, started only with the `database` profile so a plain `docker compose up` still runs the
|
|
# in-memory backend:
|
|
#
|
|
# docker compose --profile database up postgres
|
|
postgres:
|
|
image: postgres:18
|
|
container_name: ${HOST_OWNER:-ccn}-db
|
|
restart: unless-stopped
|
|
profiles:
|
|
- database
|
|
ports:
|
|
- "127.0.0.1:${DATABASE_PORT:-5432}:5432"
|
|
environment:
|
|
POSTGRES_DB: ${DATABASE_NAME:-ccn}
|
|
POSTGRES_USER: ${DATABASE_USERNAME:-ccn}
|
|
POSTGRES_PASSWORD: ${DATABASE_PASSWORD:-ccn}
|
|
security_opt:
|
|
- no-new-privileges:true
|
|
healthcheck:
|
|
test: ["CMD-SHELL", "pg_isready --username=$${POSTGRES_USER} --dbname=$${POSTGRES_DB}"]
|
|
interval: 5s
|
|
timeout: 5s
|
|
retries: 10
|
|
start_period: 30s
|
|
volumes:
|
|
- ./Tests/DB:/var/lib/postgresql
|