Refactored Docker Compose setup: added web service, updated captcha services configuration, replaced Docker Hub images with MDHub images, and updated environment variables.

This commit is contained in:
kor-elf committed 2026-10-24 02:18:49 +05:00
1 parent 07b34e79ca
commit bffcc8045d
2 files changed
+77 -26

No files matched your search

+1 -1
View File
@@ -1,4 +1,4 @@
DOCKER_APP_PORT=8080 DOCKER_WEB_PORT=8080
DOCKER_CAPTCHA_PORT=8081 DOCKER_CAPTCHA_PORT=8081
DOCKER_CAPTCHA_WEBSOCKET_PORT=8082 DOCKER_CAPTCHA_WEBSOCKET_PORT=8082
DOCKER_REGISTRY_WEB=8083 DOCKER_REGISTRY_WEB=8083
+76 -25
View File
@@ -1,39 +1,61 @@
version: '3.7' #version: '3.7'
services: services:
web:
build:
context: app
dockerfile: docker/Dockerfile
target: WEB_DEVELOP
depends_on:
- app
ports:
- ${DOCKER_WEB_PORT}:80
environment:
IS_GZIP: 0
FRONTEND_PORT: ${DOCKER_WEB_PORT}
BACKEND_HOST: app
BACKEND_PORT: 9000
# TRUSTED_PROXY_CIDR: 172.16.0.0/12
volumes:
- ./app/application/public:/usr/share/nginx/html
- ./app/application/storage/app/public:/usr/share/nginx/html/storage
app: app:
build: build:
context: app context: app
dockerfile: docker/Dockerfile dockerfile: docker/Dockerfile
target: DEVELOP target: APP_DEVELOP
depends_on: depends_on:
- db - db
- app-redis - app-redis
- captcha-app - captcha-web
ports:
- ${DOCKER_APP_PORT}:9000
volumes: volumes:
- ./app/application:/var/www/html - ./app/application:/var/www/html
- ./certs:/var/www/html/resources/certs:ro - ./certs:/var/www/html/resources/certs:ro
environment:
CONTAINER_ROLE: app
APP_ENV: local
queue: queue:
build: build:
context: app context: app
dockerfile: docker/Dockerfile dockerfile: docker/Dockerfile
target: DEVELOP target: APP_DEVELOP
depends_on: depends_on:
- db - db
- app
- app-redis - app-redis
environment: environment:
CONTAINER_ROLE: queue CONTAINER_ROLE: queue
volumes: volumes:
- ./app/application:/var/www/html - ./app/application:/var/www/html
- ./certs:/var/www/html/resources/certs:ro - ./certs:/var/www/html/resources/certs:ro
scheduler: scheduler:
build: build:
context: app context: app
dockerfile: docker/Dockerfile dockerfile: docker/Dockerfile
target: DEVELOP target: APP_DEVELOP
depends_on: depends_on:
- db - db
- app
- app-redis - app-redis
environment: environment:
CONTAINER_ROLE: scheduler CONTAINER_ROLE: scheduler
@@ -56,11 +78,6 @@ services:
MYSQL_PASSWORD: ${DB_PASSWORD} MYSQL_PASSWORD: ${DB_PASSWORD}
volumes: volumes:
- ./db/data:/var/lib/mysql - ./db/data:/var/lib/mysql
swagger:
image: swaggerapi/swagger-ui
environment:
URLS: "[ { url: '/swagger.json', name: '/swagger.json' } ]"
BASE_URL: /api-docs
artisan: artisan:
build: build:
@@ -89,62 +106,96 @@ services:
volumes: volumes:
- ./app/application:/var/www/html - ./app/application:/var/www/html
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: captcha-app:
image: korelf/service-captcha:0.8.2 # image: korelf/service-captcha-app:0.9.0 # docker hub
cap_drop: image: docker.mdhub.kor-elf.net/kor-elf/service-captcha-app:0.9.0 # MDHub
- ALL # restart: always
cap_add:
- SETGID
- SETUID
- CHOWN
- FOWNER
depends_on: depends_on:
- db - db
- captcha-redis - captcha-redis
- captcha-reverb
env_file: captcha-app/.env env_file: captcha-app/.env
environment:
CONTAINER_ROLE: app
APP_ENV: production
volumes: volumes:
- ./captcha-app/app/storage/app:/var/www/html/storage/app - ./captcha-app/app/storage/app:/var/www/html/storage/app
- ./captcha-app/app/storage/logs:/var/www/html/storage/logs - ./captcha-app/app/storage/logs:/var/www/html/storage/logs
ports:
- ${DOCKER_CAPTCHA_PORT}:9000
captcha-queue: captcha-queue:
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 # restart: always
depends_on: depends_on:
- db - db
- captcha-redis - captcha-redis
environment: environment:
CONTAINER_ROLE: queue CONTAINER_ROLE: queue
APP_ENV: production
env_file: captcha-app/.env env_file: captcha-app/.env
volumes: volumes:
- ./captcha-app/app/storage/app:/var/www/html/storage/app - ./captcha-app/app/storage/app:/var/www/html/storage/app
- ./captcha-app/app/storage/logs:/var/www/html/storage/logs - ./captcha-app/app/storage/logs:/var/www/html/storage/logs
captcha-reverb: 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 # restart: always
depends_on: depends_on:
- db - db
- captcha-redis - captcha-redis
environment: environment:
CONTAINER_ROLE: websockets CONTAINER_ROLE: websockets
APP_ENV: production
env_file: captcha-app/.env env_file: captcha-app/.env
volumes: volumes:
- ./captcha-app/app/storage/app:/var/www/html/storage/app - ./captcha-app/app/storage/app:/var/www/html/storage/app
- ./captcha-app/app/storage/logs:/var/www/html/storage/logs - ./captcha-app/app/storage/logs:/var/www/html/storage/logs
ports: ports:
- ${DOCKER_CAPTCHA_WEBSOCKET_PORT}:9000 - ${DOCKER_CAPTCHA_WEBSOCKET_PORT}:9000
captcha-scheduler: 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 # restart: always
depends_on: depends_on:
- db - db
- captcha-redis - captcha-redis
environment: environment:
CONTAINER_ROLE: scheduler CONTAINER_ROLE: scheduler
APP_ENV: production
env_file: captcha-app/.env env_file: captcha-app/.env
volumes: volumes:
- ./captcha-app/app/storage/app:/var/www/html/storage/app - ./captcha-app/app/storage/app:/var/www/html/storage/app
- ./captcha-app/app/storage/logs:/var/www/html/storage/logs - ./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: captcha-redis:
image: redis:3.0-alpine image: redis:3.0-alpine
volumes: volumes: