Files
tp/documentation/DocerComposeYamlDocs.md
T
valitovgaziz 3169dfc960 renamed: documentation/DockerComposeDocumentation.md -> documentation/DocerComposeYamlDocs.md
new file:   documentation/RestartDocs.md
add docker for restart system on server
2025-11-30 21:39:26 +05:00

4.3 KiB
Raw Blame History

Документация по Docker Compose проекту

Обзор проекта

Данный проект представляет собой комплексную инфраструктуру для хостинга нескольких веб-сайтов и сервисов с использованием Docker Compose.

Сервисы

1. Certbot

Назначение: Автоматическое получение и обновление SSL/TLS сертификатов Let's Encrypt

  • Контейнер: certbot
  • Порты: Нет внешних портов
  • Тома:
    • certbot_data - данные сертификатов
    • certbot_www - веб-корень для проверки доменов
  • Зависимости: Требует настройки доменов в .env файле

2. Nginx

Назначение: Веб-сервер и обратный прокси для всех сайтов

  • Контейнер: nginx
  • Порты: 80:80, 443:443
  • Тома: Статические файлы всех сайтов + сертификаты Certbot
  • Зависимости: Все остальные сервисы должны быть здоровы
  • Сети: web-network, internal, app-network, bb-network

3. Analytics

Назначение: Система статистики для сайта valitovgaziz.ru

  • Контейнер: analytics
  • Порты: 9999:3000
  • Технология: Node.js 22+
  • Тома: Логи и данные аналитики
  • Сети: web-network, internal

4. API для Yalarba.ru (api_tp)

Назначение: REST API для бизнес-логики yalarba.ru

  • Контейнер: api_tp
  • Порты: 8888:8080
  • Технология: Golang (Gorm, Chi)
  • База данных: db (PostgreSQL)
  • Сети: app-network

5. Основная база данных (db)

Назначение: База данных для yalarba.ru и easysite102.ru

  • Контейнер: db_tp
  • Порты: 5432:5432
  • Технология: PostgreSQL 15
  • Тома: db_tp_data
  • Миграции: ./migrations
  • Сети: app-network

6. API для Бегущий Башкир (api_bb)

Назначение: REST API для сайта Бегущий Башкир

  • Контейнер: api_bb
  • Порты: 7777:8080
  • Технология: Golang (Gorm, Chi)
  • База данных: db_bb (PostgreSQL)
  • Тома: Загружаемые файлы
  • Сети: bb-network

7. База данных Бегущий Башкир (db_bb)

Назначение: База данных для сайта Бегущий Башкир

  • Контейнер: db_bb
  • Порты: 5433:5432
  • Технология: PostgreSQL 15
  • Тома: db_bb_data
  • Сети: bb-network

8. Easysite SPA

Назначение: Интерфейс для туристического бизнеса

  • Контейнер: easysite
  • Порты: 3000:3000
  • Технология: Nuxt.js
  • Сети: web-network, app-network

9. API для Easysite (api_es)

Назначение: REST API для easysite102.ru

  • Контейнер: api_es
  • Порты: Определяется через переменную окружения
  • База данных: db (общая с yalarba.ru)
  • Сети: app-network, web-network

Сети

  • web-network: Для веб-сервисов, доступных извне
  • internal: Для внутренних сервисов
  • app-network: Для приложений yalarba.ru
  • bb-network: Для приложений Бегущий Башкир

Тома

  • certbot_data, certbot_www - данные Certbot
  • db_tp_data, db_bb_data - данные баз данных
  • api_bb_uploads - загружаемые файлы
  • analytics_logs, analytics_data - логи и данные аналитики

Переменные окружения

Создайте файл .env в корне проекта со следующими переменными:

EMAIL=your-email@example.com
ALL_DOMAINS=domain1.ru,domain2.ru
API_ES_APP_PORT=8088