diff --git a/docker-compose.yml b/docker-compose.yml index d14ecf8..6a81892 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -9,37 +9,41 @@ services: image: postgres:14-alpine restart: always volumes: - - db-data:/var/lib/postgresql/data + - ./db-data:/var/lib/postgresql/data environment: - POSTGRES_PASSWORD=postgres + healthcheck: + test: ["CMD-SHELL", "pg_isready -U postgres"] + interval: 30s + timeout: 10s + retries: 5 plausible_events_db: image: clickhouse/clickhouse-server:23.3.7.5-alpine restart: always volumes: - - event-data:/var/lib/clickhouse + - ./event-data:/var/lib/clickhouse - ./clickhouse/clickhouse-config.xml:/etc/clickhouse-server/config.d/logging.xml:ro - ./clickhouse/clickhouse-user-config.xml:/etc/clickhouse-server/users.d/logging.xml:ro ulimits: nofile: soft: 262144 hard: 262144 + healthcheck: + test: wget --no-verbose --tries=1 --spider http://localhost:8123/?query=SELECT%201 || exit 1 plausible: image: plausible/analytics:v2.0 restart: always - command: sh -c "sleep 10 && /entrypoint.sh db createdb && /entrypoint.sh db migrate && /entrypoint.sh run" + command: sh -c "/entrypoint.sh db createdb && /entrypoint.sh db migrate && /entrypoint.sh run" depends_on: - - plausible_db - - plausible_events_db - - mail + plausible_db: + condition: service_healthy + plausible_events_db: + condition: service_healthy + mail: + condition: service_started ports: - 8000:8000 env_file: - - plausible-conf.env - -volumes: - db-data: - driver: local - event-data: - driver: local + - plausible-conf.env \ No newline at end of file