From b06298d80ed44cc1d1d64715389fab484a9d123d Mon Sep 17 00:00:00 2001 From: R0m1k3 Date: Thu, 16 Apr 2026 12:51:14 +0200 Subject: [PATCH] chore: upgrade MongoDB to v8 and implement health checks for database services with conditional startup dependencies --- docker-compose.yml | 19 ++++++++++++++++--- 1 file changed, 16 insertions(+), 3 deletions(-) diff --git a/docker-compose.yml b/docker-compose.yml index a6ea577..aede5f0 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -2,13 +2,19 @@ version: '3.8' services: mongodb: - image: mongo:7 + image: mongo:8 container_name: podcastic-mongodb restart: unless-stopped volumes: - mongodb_data:/data/db networks: - podcastic_net + healthcheck: + test: ["CMD", "mongosh", "--eval", "db.adminCommand('ping')"] + interval: 10s + timeout: 5s + retries: 5 + start_period: 20s redis: image: redis:7-alpine @@ -18,6 +24,11 @@ services: - redis_data:/data networks: - podcastic_net + healthcheck: + test: ["CMD", "redis-cli", "ping"] + interval: 10s + timeout: 5s + retries: 5 app: build: @@ -38,8 +49,10 @@ services: PODCAST_INDEX_API_KEY: ${PODCAST_INDEX_API_KEY:-} PODCAST_INDEX_API_SECRET: ${PODCAST_INDEX_API_SECRET:-} depends_on: - - mongodb - - redis + mongodb: + condition: service_healthy + redis: + condition: service_healthy networks: - podcastic_net