config_mobile/docker-compose.yml

80 lines
1.8 KiB
YAML

version: "3.3"
volumes:
certbot_volume:
nginx_log_volume:
mysql_data_volume:
mysql_backup_volume:
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_DAABASE: ${MYSQL_DATABASE}
MYSQL_PASSWORD: ${MYSQL_PASSWORD}
volumes:
- mysql_data_volume:/var/lib/mysql
- mysql_backup_volume:/backups
networks:
- dd
php:
image: registry.dot-dot.ru/dot-dot:${DOTDOT_TAG}
# command: "php-fpm && nginx -g 'daemon off;'"
restart: unless-stopped
volumes:
- ./configs/php/.env:/application/.env
- ./configs/php/.env.local:/application/.env.local
depends_on:
- db
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
networks:
- dd
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
labels:
- "traefik.enable=true"
- "traefik.http.routers.nginx.rule=Host(`testa.dot-dot.ru`)"
- "traefik.http.services.nginx.loadbalancer.server.port=80"
depends_on:
- nuxt
- php
- static
networks:
- dd
- ingress