185 lines
4.4 KiB
YAML
185 lines
4.4 KiB
YAML
volumes:
|
|
certbot_volume:
|
|
nginx_log_volume:
|
|
mysql_data_volume:
|
|
mysql_backup_volume:
|
|
php_var_volume:
|
|
bookstack_data_volume:
|
|
rabbitmq_volume:
|
|
redis_volume:
|
|
php_support_volume:
|
|
|
|
|
|
x-defaults-php: &defaults-php
|
|
image: registry.dot-dot.ru/dot-dot:${DOTDOT_TAG}
|
|
restart: unless-stopped
|
|
volumes:
|
|
- ./configs/php/.env:/application/.env
|
|
- ./configs/php/.env.local:/application/.env.local
|
|
- ./configs/php/zz-docker.conf:/usr/local/etc/php-fpm.d/zz-docker.conf
|
|
- php_var_volume:/application/var
|
|
- php_support_volume:/application/var/support-issue
|
|
- ./configs/php/www.conf:/usr/local/etc/php-fpm.d/www.conf
|
|
- ./configs/php/firebase-fcm-dotdot-key.json:/application/config/firebase-fcm-dotdot-key.json
|
|
depends_on:
|
|
- db
|
|
- rabbitmq
|
|
networks:
|
|
- dd
|
|
|
|
networks:
|
|
dd:
|
|
name: ${NETWORK}
|
|
ingress:
|
|
external: true
|
|
|
|
services:
|
|
db:
|
|
image: mariadb:10.3.25
|
|
restart: unless-stopped
|
|
environment:
|
|
MYSQL_ROOT_PASSWORD: ${MYSQL_ROOT_PASSWORD}
|
|
MYSQL_USER: ${MYSQL_USER}
|
|
MYSQL_DATABASE: ${MYSQL_DATABASE}
|
|
MYSQL_PASSWORD: ${MYSQL_PASSWORD}
|
|
ports:
|
|
- ${MYSQL_PORT}:3306
|
|
volumes:
|
|
- mysql_data_volume:/var/lib/mysql
|
|
- mysql_backup_volume:/backups
|
|
networks:
|
|
- dd
|
|
|
|
mysqld-exporter:
|
|
image: prom/mysqld-exporter:v0.15.1
|
|
restart: unless-stopped
|
|
command: --config.my-cnf=/.my.cnf
|
|
volumes:
|
|
- ./.my.cnf:/.my.cnf
|
|
depends_on:
|
|
- db
|
|
networks:
|
|
- dd
|
|
|
|
backend:
|
|
<<: *defaults-php
|
|
|
|
php:
|
|
# TODO: Денис должен переделать и добавить
|
|
command: ./bin/console app:auction:reload
|
|
<<: *defaults-php
|
|
|
|
statistic-export:
|
|
<<: *defaults-php
|
|
command: ./bin/console messenger:consume StatisticExport
|
|
|
|
carrier-offers:
|
|
<<: *defaults-php
|
|
command: ./bin/console messenger:consume CarrierOffers
|
|
|
|
user-trust:
|
|
<<: *defaults-php
|
|
command: ./bin/console messenger:consume UserTrust
|
|
|
|
auction:
|
|
<<: *defaults-php
|
|
command: sh -c 'while true; do echo run; ./bin/console app:auction:process; sleep 60;done'
|
|
|
|
lms:
|
|
image: registry.dot-dot.ru/lms:${LMS_TAG}
|
|
restart: unless-stopped
|
|
command: npm run start
|
|
volumes:
|
|
- ./configs/lms/.env:/app/.env
|
|
env_file:
|
|
- ./configs/lms/.env
|
|
networks:
|
|
- dd
|
|
|
|
static:
|
|
image: registry.dot-dot.ru/dot-dot-static:${DOTDOT_TAG}
|
|
restart: unless-stopped
|
|
networks:
|
|
- dd
|
|
|
|
nuxt:
|
|
image: registry.dot-dot.ru/front:${FRONT_TAG}
|
|
restart: unless-stopped
|
|
command: npm run start
|
|
volumes:
|
|
- ./configs/nuxt/.env:/app/.env
|
|
- ./configs/nuxt/entrypoint.sh:/entrypoint.sh
|
|
env_file:
|
|
- ./configs/nuxt/.env
|
|
networks:
|
|
- dd
|
|
|
|
dashboard:
|
|
image: registry.dot-dot.ru/dashboard:${DASHBORD_TAG}
|
|
command: frankenphp php-server -r /application/public
|
|
restart: unless-stopped
|
|
environment:
|
|
- SERVER_NAME=stagingdashboard.dot-dot.ru
|
|
volumes:
|
|
- ./configs/dashboard/.env:/application/.env
|
|
depends_on:
|
|
- db
|
|
networks:
|
|
- dd
|
|
- ingress
|
|
|
|
nginx:
|
|
image: nginx:1.25.3-alpine3.18
|
|
restart: unless-stopped
|
|
volumes:
|
|
- ./configs/nginx/conf.d:/etc/nginx/conf.d
|
|
- ./configs/nginx/nginx.conf:/etc/nginx/nginx.conf
|
|
- ./configs/nginx/www:/var/www
|
|
- ./configs/nginx/ssl:/etc/nginx/ssl
|
|
- ./configs/nginx/other:/etc/nginx/other
|
|
- certbot_volume:/etc/letsencrypt
|
|
- nginx_log_volume:/var/log/nginx
|
|
depends_on:
|
|
- nuxt
|
|
- php
|
|
- static
|
|
networks:
|
|
dd:
|
|
ingress:
|
|
aliases:
|
|
- ${NETWORK}-nginx
|
|
|
|
rabbitmq:
|
|
image: rabbitmq:3.12.1-management-alpine
|
|
restart: unless-stopped
|
|
hostname: ${COMPOSE_PROJECT_NAME}
|
|
volumes:
|
|
- rabbitmq_volume:/var/lib/rabbitmq
|
|
- ./configs/rabbitmq/enabled_plugins:/etc/rabbitmq/enabled_plugins
|
|
environment:
|
|
- RABBITMQ_DEFAULT_USER=${RABBITMQ_USERNAME}
|
|
- RABBITMQ_DEFAULT_PASS=${RABBITMQ_PASSWORD}
|
|
- RABBITMQ_CONFIG_FILE=/etc/rabbitmq/rabbitmq.conf
|
|
networks:
|
|
dd: {}
|
|
|
|
redis:
|
|
image: redis:7.2.4-alpine3.19
|
|
restart: unless-stopped
|
|
volumes:
|
|
- redis_volume:/data
|
|
- ./configs/redis:/usr/local/etc/redis
|
|
environment:
|
|
- REDIS_PASSWORD=${REDIS_PASSWORD}
|
|
- REDIS_PORT=6379
|
|
networks:
|
|
dd: {}
|
|
|
|
redis-exporter:
|
|
image: oliver006/redis_exporter:v1.59.0
|
|
command:
|
|
- "--redis.addr=redis://redis:6379"
|
|
- "--redis.password=${REDIS_PASSWORD}"
|
|
networks:
|
|
dd: {}
|