136 lines
3.5 KiB
YAML
136 lines
3.5 KiB
YAML
|
version: '3.7'
|
||
|
services:
|
||
|
app:
|
||
|
build:
|
||
|
context: app
|
||
|
dockerfile: docker/Dockerfile
|
||
|
target: DEVELOP
|
||
|
depends_on:
|
||
|
- db
|
||
|
- app-redis
|
||
|
- captcha-app
|
||
|
ports:
|
||
|
- ${DOCKER_APP_PORT}:9000
|
||
|
volumes:
|
||
|
- ./app/application:/var/www/html
|
||
|
queue:
|
||
|
build:
|
||
|
context: app
|
||
|
dockerfile: docker/Dockerfile
|
||
|
target: DEVELOP
|
||
|
depends_on:
|
||
|
- db
|
||
|
- app-redis
|
||
|
environment:
|
||
|
CONTAINER_ROLE: queue
|
||
|
volumes:
|
||
|
- ./app/application:/var/www/html
|
||
|
scheduler:
|
||
|
build:
|
||
|
context: app
|
||
|
dockerfile: docker/Dockerfile
|
||
|
target: DEVELOP
|
||
|
depends_on:
|
||
|
- db
|
||
|
- app-redis
|
||
|
environment:
|
||
|
CONTAINER_ROLE: scheduler
|
||
|
volumes:
|
||
|
- ./app/application:/var/www/html
|
||
|
app-redis:
|
||
|
image: redis:3.0-alpine
|
||
|
volumes:
|
||
|
- ./redis/data:/data
|
||
|
db:
|
||
|
image: mysql:8.0.33
|
||
|
command: --default-authentication-plugin=mysql_native_password
|
||
|
ports:
|
||
|
- ${DOCKER_DB_PORT}:3306
|
||
|
environment:
|
||
|
MYSQL_ROOT_PASSWORD: ${MYSQL_ROOT_PASSWORD}
|
||
|
MYSQL_DATABASE: ${DB_DATABASE}
|
||
|
MYSQL_USER: ${DB_USERNAME}
|
||
|
MYSQL_PASSWORD: ${DB_PASSWORD}
|
||
|
volumes:
|
||
|
- ./db/data:/var/lib/mysql
|
||
|
swagger:
|
||
|
image: swaggerapi/swagger-ui
|
||
|
environment:
|
||
|
URLS: "[ { url: '/swagger.json', name: '/swagger.json' } ]"
|
||
|
BASE_URL: /api-docs
|
||
|
|
||
|
artisan:
|
||
|
build:
|
||
|
context: app
|
||
|
dockerfile: docker/Dockerfile
|
||
|
target: ARTISAN
|
||
|
user: "${UID}:${GID}"
|
||
|
volumes:
|
||
|
- ./app/application:/var/www/html
|
||
|
|
||
|
composer:
|
||
|
build:
|
||
|
context: app
|
||
|
dockerfile: docker/Dockerfile
|
||
|
target: COMPOSER
|
||
|
user: "${UID}:${GID}"
|
||
|
volumes:
|
||
|
- ./app/application:/var/www/html
|
||
|
|
||
|
npm:
|
||
|
build:
|
||
|
context: app
|
||
|
dockerfile: docker/Dockerfile
|
||
|
target: NPM
|
||
|
user: "${UID}:${GID}"
|
||
|
volumes:
|
||
|
- ./app/application:/var/www/html
|
||
|
|
||
|
captcha-app:
|
||
|
image: korelf/service-captcha:0.8.1
|
||
|
cap_drop:
|
||
|
- ALL
|
||
|
cap_add:
|
||
|
- SETGID
|
||
|
- SETUID
|
||
|
- CHOWN
|
||
|
- FOWNER
|
||
|
depends_on:
|
||
|
- db
|
||
|
- captcha-redis
|
||
|
env_file: captcha-app/.env
|
||
|
ports:
|
||
|
- ${DOCKER_CAPTCHA_PORT}:9000
|
||
|
captcha-queue:
|
||
|
image: korelf/service-captcha:0.8.1
|
||
|
# restart: always
|
||
|
depends_on:
|
||
|
- db
|
||
|
- captcha-redis
|
||
|
environment:
|
||
|
CONTAINER_ROLE: queue
|
||
|
env_file: captcha-app/.env
|
||
|
captcha-reverb:
|
||
|
image: korelf/service-captcha:0.8.1
|
||
|
# restart: always
|
||
|
depends_on:
|
||
|
- db
|
||
|
- captcha-redis
|
||
|
environment:
|
||
|
CONTAINER_ROLE: websockets
|
||
|
env_file: captcha-app/.env
|
||
|
ports:
|
||
|
- ${DOCKER_CAPTCHA_WEBSOCKET_PORT}:9000
|
||
|
captcha-scheduler:
|
||
|
image: korelf/service-captcha:0.8.1
|
||
|
# restart: always
|
||
|
depends_on:
|
||
|
- db
|
||
|
- captcha-redis
|
||
|
environment:
|
||
|
CONTAINER_ROLE: scheduler
|
||
|
env_file: captcha-app/.env
|
||
|
captcha-redis:
|
||
|
image: redis:3.0-alpine
|
||
|
volumes:
|
||
|
- ./captcha-app/redis/data:/data
|