2025-12-23 11:14:24 +01:00
|
|
|
services:
|
|
|
|
|
db:
|
|
|
|
|
image: mariadb:11
|
2025-12-23 12:21:13 +01:00
|
|
|
container_name: e2e-db
|
2025-12-23 11:14:24 +01:00
|
|
|
environment:
|
|
|
|
|
MARIADB_DATABASE: matomo
|
|
|
|
|
MARIADB_USER: matomo
|
|
|
|
|
MARIADB_PASSWORD: matomo_pw
|
|
|
|
|
MARIADB_ROOT_PASSWORD: root_pw
|
|
|
|
|
healthcheck:
|
|
|
|
|
test: ["CMD-SHELL", "mariadb-admin ping -uroot -proot_pw --silent"]
|
|
|
|
|
interval: 5s
|
|
|
|
|
timeout: 3s
|
|
|
|
|
retries: 60
|
|
|
|
|
|
|
|
|
|
matomo:
|
|
|
|
|
image: matomo:5.3.2
|
2025-12-23 12:21:13 +01:00
|
|
|
container_name: e2e-matomo
|
2025-12-23 11:14:24 +01:00
|
|
|
depends_on:
|
|
|
|
|
db:
|
|
|
|
|
condition: service_healthy
|
|
|
|
|
ports:
|
|
|
|
|
- "8080:80"
|
|
|
|
|
environment:
|
|
|
|
|
MATOMO_DATABASE_HOST: db
|
|
|
|
|
MATOMO_DATABASE_ADAPTER: mysql
|
|
|
|
|
MATOMO_DATABASE_USERNAME: matomo
|
|
|
|
|
MATOMO_DATABASE_PASSWORD: matomo_pw
|
|
|
|
|
MATOMO_DATABASE_DBNAME: matomo
|
2025-12-23 17:44:41 +01:00
|
|
|
|
|
|
|
|
nix:
|
|
|
|
|
image: nixos/nix:latest
|
|
|
|
|
container_name: e2e-nix
|
|
|
|
|
depends_on:
|
|
|
|
|
matomo:
|
|
|
|
|
condition: service_started
|
|
|
|
|
|
|
|
|
|
# Run as root to avoid /nix big-lock permission issues
|
|
|
|
|
user: "0:0"
|
|
|
|
|
working_dir: /work
|
|
|
|
|
|
|
|
|
|
volumes:
|
|
|
|
|
# Project root as flake
|
|
|
|
|
- ../../:/work:ro
|
|
|
|
|
|
|
|
|
|
# Nix store (removed by docker compose down -v)
|
|
|
|
|
- e2e_nix_store:/nix
|
|
|
|
|
|
|
|
|
|
# HOME/XDG for nix + playwright
|
|
|
|
|
- e2e_nix_home:/tmp/home
|
|
|
|
|
|
|
|
|
|
environment:
|
|
|
|
|
NIX_CONFIG: "experimental-features = nix-command flakes"
|
|
|
|
|
TERM: "xterm"
|
|
|
|
|
|
|
|
|
|
HOME: "/tmp/home"
|
|
|
|
|
USER: "root"
|
|
|
|
|
LOGNAME: "root"
|
|
|
|
|
XDG_CACHE_HOME: "/tmp/home/.cache"
|
|
|
|
|
XDG_CONFIG_HOME: "/tmp/home/.config"
|
|
|
|
|
XDG_DATA_HOME: "/tmp/home/.local/share"
|
|
|
|
|
|
|
|
|
|
MATOMO_SITE_NAME: "Matomo E2E"
|
|
|
|
|
MATOMO_SITE_URL: "http://127.0.0.1:8080"
|
|
|
|
|
MATOMO_TIMEZONE: "Germany - Berlin"
|
|
|
|
|
|
|
|
|
|
command: >
|
|
|
|
|
sh -lc "mkdir -p /tmp/home/.cache /tmp/home/.config /tmp/home/.local/share;
|
|
|
|
|
tail -f /dev/null"
|
|
|
|
|
|
|
|
|
|
# Allow access to host-published Matomo port
|
|
|
|
|
network_mode: host
|
|
|
|
|
|
|
|
|
|
volumes:
|
|
|
|
|
e2e_nix_store:
|
|
|
|
|
e2e_nix_home:
|