124 lines
2.8 KiB
YAML
124 lines
2.8 KiB
YAML
version: '3.7'
|
|
|
|
volumes:
|
|
db:
|
|
redis:
|
|
static:
|
|
storage:
|
|
elastic:
|
|
|
|
services:
|
|
app:
|
|
build:
|
|
context: .
|
|
dockerfile: docker/tabun/Dockerfile
|
|
target: backend-development
|
|
ports:
|
|
- '${HOST_IP:-127.0.0.1}:9003:9003'
|
|
volumes:
|
|
- static:/static
|
|
- storage:/storage
|
|
- ./index.php:/app/index.php
|
|
- ./engine:/app/engine
|
|
- ./classes:/app/classes
|
|
- ./settings:/app/settings
|
|
- ./templates:/app/templates
|
|
depends_on:
|
|
- db
|
|
- redis
|
|
- tasks
|
|
environment:
|
|
MARIADB_USER: ${MARIADB_USER:-tabun}
|
|
MARIADB_PASSWORD: ${MARIADB_PASSWORD:-tabun}
|
|
MARIADB_DATABASE: ${MARIADB_DATABASE:-tabun}
|
|
PHP_IDE_CONFIG: "serverName=tabun"
|
|
networks:
|
|
default:
|
|
aliases:
|
|
- tabun
|
|
|
|
frontend:
|
|
build:
|
|
context: .
|
|
dockerfile: docker/tabun/Dockerfile
|
|
target: frontend-development
|
|
volumes:
|
|
- ./frontend:/frontend/frontend
|
|
- /frontend/node_modules
|
|
- ./templates/skin/synio/locale/ru_RU/LC_MESSAGES:/frontend/templates/skin/synio/locale/ru_RU/LC_MESSAGES
|
|
- static:/frontend/static
|
|
|
|
gateway:
|
|
image: nginx:alpine
|
|
ports:
|
|
- '${HOST_IP:-127.0.0.1}:8000:80'
|
|
restart: always
|
|
volumes:
|
|
- ./docker/gateway/nginx.conf:/etc/nginx/nginx.conf
|
|
- static:/app/static
|
|
- storage:/storage
|
|
depends_on:
|
|
- app
|
|
|
|
db:
|
|
build:
|
|
context: .
|
|
dockerfile: docker/mariadb/Dockerfile
|
|
environment:
|
|
MARIADB_USER: ${MARIADB_USER:-tabun}
|
|
MARIADB_PASSWORD: ${MARIADB_PASSWORD:-tabun}
|
|
MARIADB_DATABASE: ${MARIADB_DATABASE:-tabun}
|
|
MARIADB_ALLOW_EMPTY_ROOT_PASSWORD: ${MARIADB_ALLOW_EMPTY_ROOT_PASSWORD:-true}
|
|
volumes:
|
|
- ./docker/mariadb/conf.d:/etc/mysql/conf.d/
|
|
- db:/var/lib/mysql
|
|
ports:
|
|
- '${HOST_IP:-127.0.0.1}:3307:3306'
|
|
|
|
tasks:
|
|
build:
|
|
context: .
|
|
dockerfile: docker/celery/Dockerfile
|
|
volumes:
|
|
- ./docker/celery/tasks.py:/app/tasks.py
|
|
depends_on:
|
|
- redis
|
|
environment:
|
|
- CELERY_MAILER_HOST=mailcatcher
|
|
- CELERY_MAILER_PORT=1025
|
|
|
|
redis:
|
|
image: redis:alpine
|
|
restart: always
|
|
volumes:
|
|
- redis:/data
|
|
|
|
elastic:
|
|
image: elasticsearch:8.2.0
|
|
volumes:
|
|
- elastic:/usr/share/elasticsearch/data
|
|
environment:
|
|
- discovery.type=single-node
|
|
- xpack.security.enabled=false
|
|
|
|
#kibana:
|
|
# image: kibana:8.2.0
|
|
# ports:
|
|
# - '${HOST_IP:-127.0.0.1}:5601:5601'
|
|
|
|
mailcatcher:
|
|
image: schickling/mailcatcher:latest
|
|
ports:
|
|
- '${HOST_IP:-127.0.0.1}:1080:1080'
|
|
|
|
phpmyadmin:
|
|
image: phpmyadmin
|
|
restart: always
|
|
ports:
|
|
- '${HOST_IP:-127.0.0.1}:8080:80'
|
|
links:
|
|
- db:db
|
|
environment:
|
|
PMA_USER: ${MARIADB_USER:-tabun}
|
|
PMA_PASSWORD: ${MARIADB_PASSWORD:-tabun}
|