# 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} platform: linux/arm64 build: context: ../.. dockerfile: Services/Website/Dockerfile environment: LOG_LEVEL: debug DATABASE_DRIVER: ${DATABASE_DRIVER:-inMemory} DATABASE_HOST: ${DATABASE_HOST:-localhost} DATABASE_TLS: ${DATABASE_TLS:-off} # 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 mariadb mariadb: image: mariadb:11 container_name: ${HOST_OWNER:-loud}-db restart: unless-stopped profiles: - database ports: - "127.0.0.1:${DATABASE_PORT:-3306}:3306" environment: MARIADB_RANDOM_ROOT_PASSWORD: "yes" MARIADB_DATABASE: ${DATABASE_NAME:-loud-ams} MARIADB_USER: ${DATABASE_USERNAME:-loud-ams} MARIADB_PASSWORD: ${DATABASE_PASSWORD:-loud-ams} MARIADB_AUTO_UPGRADE: "1" command: - "--character-set-server=utf8mb4" - "--collation-server=utf8mb4_unicode_ci" security_opt: - no-new-privileges:true healthcheck: test: ["CMD", "healthcheck.sh", "--connect", "--innodb_initialized"] interval: 5s timeout: 5s retries: 10 start_period: 30s volumes: - ./Tests/DB:/var/lib/mysql