From 27279f02789a19b2c66db90ca0ac7aac9a45acf8 Mon Sep 17 00:00:00 2001 From: Leonid Nikitin Date: Sat, 24 Oct 2026 00:44:35 +0500 Subject: [PATCH] Update production Docker Compose with new captcha-web service and MDHub image references - Add captcha-web service with environment variables, dependencies, and volume bindings. - Replace Docker Hub image references with MDHub equivalents for all captcha-related services. - Update service environment configuration for production readiness, including APP_ENV additions. - Add captcha-swagger service for API documentation. --- docker-compose.yml | 81 ++++++++++++++++++++++++++++++++-------------- 1 file changed, 56 insertions(+), 25 deletions(-) diff --git a/docker-compose.yml b/docker-compose.yml index 448140d..b94407b 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -26,7 +26,7 @@ services: depends_on: - db - app-redis - - captcha-app + - captcha-web volumes: - ./app/application:/var/www/html environment: @@ -66,65 +66,96 @@ services: volumes: - ./redis/data:/data - captcha-app: - image: korelf/service-captcha:0.8.2 - cap_drop: - - ALL - cap_add: - - SETGID - - SETUID - - CHOWN - - FOWNER - depends_on: - - db - - captcha-redis - env_file: captcha-app/.env - volumes: - - ./captcha-app/app/storage/app:/var/www/html/storage/app - - ./captcha-app/app/storage/logs:/var/www/html/storage/logs - ports: - - ${DOCKER_CAPTCHA_PORT}:9000 - captcha-queue: - image: korelf/service-captcha:0.8.2 + captcha-web: + # image: korelf/service-captcha-web:0.9.0 # docker hub + image: docker.mdhub.kor-elf.net/kor-elf/service-captcha-web:0.9.0 # MDHub # restart: always depends_on: - captcha-app + ports: + - ${DOCKER_CAPTCHA_PORT}:80 + environment: + IS_GZIP: 0 + FRONTEND_PORT: ${DOCKER_CAPTCHA_PORT} + BACKEND_HOST: captcha-app + BACKEND_PORT: 9000 + TRUSTED_PROXY_CIDR: 172.16.0.0/12 + # Enable swagger + ENABLE_API_DOCS: 1 + SWAGGER_HOST: captcha-swagger + SWAGGER_PORT: 8080 + volumes: + - ./captcha-app/app/storage/app/public:/usr/share/nginx/html/storage + + captcha-app: + # image: korelf/service-captcha-app:0.9.0 # docker hub + image: docker.mdhub.kor-elf.net/kor-elf/service-captcha-app:0.9.0 # MDHub + # restart: always + depends_on: + - db + - captcha-redis + - captcha-reverb + env_file: captcha-app/.env + environment: + CONTAINER_ROLE: app + APP_ENV: production + volumes: + - ./captcha-app/app/storage/app:/var/www/html/storage/app + - ./captcha-app/app/storage/logs:/var/www/html/storage/logs + + captcha-queue: + # image: korelf/service-captcha-app:0.9.0 # docker hub + image: docker.mdhub.kor-elf.net/kor-elf/service-captcha-app:0.9.0 # MDHub + # restart: always + depends_on: - db - captcha-redis environment: CONTAINER_ROLE: queue + APP_ENV: production env_file: captcha-app/.env volumes: - ./captcha-app/app/storage/app:/var/www/html/storage/app - ./captcha-app/app/storage/logs:/var/www/html/storage/logs + captcha-reverb: - image: korelf/service-captcha:0.8.2 + # image: korelf/service-captcha-app:0.9.0 # docker hub + image: docker.mdhub.kor-elf.net/kor-elf/service-captcha-app:0.9.0 # MDHub # restart: always depends_on: - - captcha-app - db - captcha-redis environment: CONTAINER_ROLE: websockets + APP_ENV: production env_file: captcha-app/.env volumes: - ./captcha-app/app/storage/app:/var/www/html/storage/app - ./captcha-app/app/storage/logs:/var/www/html/storage/logs ports: - ${DOCKER_CAPTCHA_WEBSOCKET_PORT}:9000 + captcha-scheduler: - image: korelf/service-captcha:0.8.2 + # image: korelf/service-captcha-app:0.9.0 # docker hub + image: docker.mdhub.kor-elf.net/kor-elf/service-captcha-app:0.9.0 # MDHub # restart: always depends_on: - - captcha-app - db - captcha-redis environment: CONTAINER_ROLE: scheduler + APP_ENV: production env_file: captcha-app/.env volumes: - ./captcha-app/app/storage/app:/var/www/html/storage/app - ./captcha-app/app/storage/logs:/var/www/html/storage/logs + captcha-swagger: + image: swaggerapi/swagger-ui + depends_on: + - captcha-app + environment: + URLS: "[ { url: '/swagger.json', name: '/swagger.json' } ]" + BASE_URL: /api-docs captcha-redis: image: redis:3.0-alpine # docker hub volumes: