Add PostgreSQL configuration and database management tools
- Added PostgreSQL service to docker-compose.yml - Updated .env.example with complete database settings - Created DATABASE.md with comprehensive PostgreSQL guide - Added backup-db.sh script for automatic database backups - Configured health checks for both PostgreSQL and app containers - Added Docker network for secure container communication
This commit is contained in:
59
.env.example
59
.env.example
@@ -1,11 +1,21 @@
|
|||||||
|
|
||||||
|
# ==================================
|
||||||
|
# ОБЩИЕ НАСТРОЙКИ
|
||||||
|
# ==================================
|
||||||
|
|
||||||
# Домен вашего сайта
|
# Домен вашего сайта
|
||||||
DOMAIN=video.mscsrv.ru
|
DOMAIN=video.mscsrv.ru
|
||||||
|
|
||||||
# URL сайта (используется для метатегов и canonical URL)
|
# URL сайта (используется для метатегов и canonical URL)
|
||||||
NEXT_PUBLIC_SITE_URL=https://video.mscsrv.ru
|
NEXT_PUBLIC_SITE_URL=https://video.mscsrv.ru
|
||||||
|
|
||||||
# IP адреса
|
# Для production окружения
|
||||||
|
NODE_ENV=production
|
||||||
|
|
||||||
|
# ==================================
|
||||||
|
# СЕТЕВЫЕ НАСТРОЙКИ
|
||||||
|
# ==================================
|
||||||
|
|
||||||
# Traefik хост
|
# Traefik хост
|
||||||
TRAEFIK_HOST=192.168.50.59
|
TRAEFIK_HOST=192.168.50.59
|
||||||
|
|
||||||
@@ -13,5 +23,48 @@ TRAEFIK_HOST=192.168.50.59
|
|||||||
# Укажите IP текущего хоста в локальной сети
|
# Укажите IP текущего хоста в локальной сети
|
||||||
APP_HOST_IP=192.168.50.X
|
APP_HOST_IP=192.168.50.X
|
||||||
|
|
||||||
# Для production окружения
|
# ==================================
|
||||||
NODE_ENV=production
|
# БАЗА ДАННЫХ POSTGRESQL
|
||||||
|
# ==================================
|
||||||
|
|
||||||
|
# Имя пользователя PostgreSQL
|
||||||
|
POSTGRES_USER=globalit24
|
||||||
|
|
||||||
|
# Пароль PostgreSQL (ОБЯЗАТЕЛЬНО ИЗМЕНИТЕ!)
|
||||||
|
POSTGRES_PASSWORD=changeme123
|
||||||
|
|
||||||
|
# Имя базы данных
|
||||||
|
POSTGRES_DB=globalit24_db
|
||||||
|
|
||||||
|
# URL подключения к базе данных
|
||||||
|
# Формат: postgresql://USER:PASSWORD@HOST:PORT/DATABASE
|
||||||
|
DATABASE_URL=postgresql://globalit24:changeme123@postgres:5432/globalit24_db
|
||||||
|
|
||||||
|
# ==================================
|
||||||
|
# EMAIL УВЕДОМЛЕНИЯ (SMTP)
|
||||||
|
# ==================================
|
||||||
|
|
||||||
|
# SMTP сервер (например: smtp.mail.ru, smtp.gmail.com, smtp.yandex.ru)
|
||||||
|
SMTP_HOST=smtp.mail.ru
|
||||||
|
|
||||||
|
# SMTP порт (обычно 465 для SSL, 587 для TLS)
|
||||||
|
SMTP_PORT=465
|
||||||
|
|
||||||
|
# Email адрес отправителя
|
||||||
|
SMTP_USER=your-email@mail.ru
|
||||||
|
|
||||||
|
# Пароль от email (для Mail.ru используйте пароль приложения)
|
||||||
|
SMTP_PASSWORD=your-smtp-app-password
|
||||||
|
|
||||||
|
# Email для получения уведомлений о заявках
|
||||||
|
NOTIFICATION_EMAIL=info@global-it24.ru
|
||||||
|
|
||||||
|
# ==================================
|
||||||
|
# TELEGRAM УВЕДОМЛЕНИЯ
|
||||||
|
# ==================================
|
||||||
|
|
||||||
|
# Токен бота Telegram (получить у @BotFather)
|
||||||
|
TELEGRAM_BOT_TOKEN=1234567890:ABCdefGHIjklMNOpqrsTUVwxyz
|
||||||
|
|
||||||
|
# ID чата для уведомлений (получить у @userinfobot)
|
||||||
|
TELEGRAM_CHAT_ID=123456789
|
||||||
|
|||||||
352
DATABASE.md
Normal file
352
DATABASE.md
Normal file
@@ -0,0 +1,352 @@
|
|||||||
|
|
||||||
|
# 🗄 Руководство по работе с PostgreSQL
|
||||||
|
|
||||||
|
## 📋 Обзор
|
||||||
|
|
||||||
|
Проект использует PostgreSQL 16 в Docker контейнере. База данных автоматически запускается вместе с приложением через Docker Compose.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## ⚙️ Конфигурация
|
||||||
|
|
||||||
|
### Переменные окружения (.env)
|
||||||
|
|
||||||
|
```env
|
||||||
|
# Настройки PostgreSQL
|
||||||
|
POSTGRES_USER=globalit24
|
||||||
|
POSTGRES_PASSWORD=changeme123 # ОБЯЗАТЕЛЬНО ИЗМЕНИТЕ!
|
||||||
|
POSTGRES_DB=globalit24_db
|
||||||
|
|
||||||
|
# URL для подключения
|
||||||
|
DATABASE_URL=postgresql://globalit24:changeme123@postgres:5432/globalit24_db
|
||||||
|
```
|
||||||
|
|
||||||
|
**⚠️ ВАЖНО:** Обязательно измените `POSTGRES_PASSWORD` на сильный пароль перед развертыванием!
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 🚀 Автоматический запуск
|
||||||
|
|
||||||
|
PostgreSQL запускается автоматически при выполнении:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
./deploy.sh
|
||||||
|
# или
|
||||||
|
docker compose up -d
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 📊 Структура базы данных
|
||||||
|
|
||||||
|
### Таблица: contact_submissions
|
||||||
|
|
||||||
|
Хранит все заявки с формы обратной связи.
|
||||||
|
|
||||||
|
```sql
|
||||||
|
CREATE TABLE contact_submissions (
|
||||||
|
id VARCHAR PRIMARY KEY, -- Уникальный идентификатор (cuid)
|
||||||
|
name VARCHAR NOT NULL, -- Имя клиента
|
||||||
|
phone VARCHAR NOT NULL, -- Телефон
|
||||||
|
email VARCHAR, -- Email (опционально)
|
||||||
|
service_type VARCHAR, -- Тип услуги (опционально)
|
||||||
|
message TEXT, -- Сообщение (опционально)
|
||||||
|
created_at TIMESTAMP DEFAULT NOW() -- Дата создания
|
||||||
|
);
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 🔧 Управление базой данных
|
||||||
|
|
||||||
|
### 1. Подключение к PostgreSQL контейнеру
|
||||||
|
|
||||||
|
```bash
|
||||||
|
# Войти в контейнер PostgreSQL
|
||||||
|
docker exec -it global-it24-postgres psql -U globalit24 -d globalit24_db
|
||||||
|
```
|
||||||
|
|
||||||
|
### 2. Основные SQL команды
|
||||||
|
|
||||||
|
```sql
|
||||||
|
-- Посмотреть все таблицы
|
||||||
|
\dt
|
||||||
|
|
||||||
|
-- Описание таблицы
|
||||||
|
\d contact_submissions
|
||||||
|
|
||||||
|
-- Посмотреть все заявки
|
||||||
|
SELECT * FROM contact_submissions ORDER BY created_at DESC;
|
||||||
|
|
||||||
|
-- Посмотреть последние 10 заявок
|
||||||
|
SELECT * FROM contact_submissions ORDER BY created_at DESC LIMIT 10;
|
||||||
|
|
||||||
|
-- Посмотреть заявки за сегодня
|
||||||
|
SELECT * FROM contact_submissions
|
||||||
|
WHERE created_at::date = CURRENT_DATE
|
||||||
|
ORDER BY created_at DESC;
|
||||||
|
|
||||||
|
-- Статистика по типам услуг
|
||||||
|
SELECT service_type, COUNT(*) as count
|
||||||
|
FROM contact_submissions
|
||||||
|
GROUP BY service_type
|
||||||
|
ORDER BY count DESC;
|
||||||
|
|
||||||
|
-- Выход
|
||||||
|
\q
|
||||||
|
```
|
||||||
|
|
||||||
|
### 3. Резервное копирование базы данных
|
||||||
|
|
||||||
|
```bash
|
||||||
|
# Создать бэкап
|
||||||
|
docker exec -t global-it24-postgres pg_dump -U globalit24 globalit24_db > backup_$(date +%Y%m%d_%H%M%S).sql
|
||||||
|
|
||||||
|
# Или автоматический скрипт
|
||||||
|
./backup-db.sh
|
||||||
|
```
|
||||||
|
|
||||||
|
### 4. Восстановление из бэкапа
|
||||||
|
|
||||||
|
```bash
|
||||||
|
# Восстановить из файла
|
||||||
|
docker exec -i global-it24-postgres psql -U globalit24 -d globalit24_db < backup_YYYYMMDD_HHMMSS.sql
|
||||||
|
```
|
||||||
|
|
||||||
|
### 5. Очистка старых данных (опционально)
|
||||||
|
|
||||||
|
```bash
|
||||||
|
# Удалить заявки старше 1 года
|
||||||
|
docker exec -it global-it24-postgres psql -U globalit24 -d globalit24_db -c "DELETE FROM contact_submissions WHERE created_at < NOW() - INTERVAL '1 year';"
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 🔍 Проверка состояния
|
||||||
|
|
||||||
|
### Статус контейнера
|
||||||
|
|
||||||
|
```bash
|
||||||
|
# Проверка работы PostgreSQL
|
||||||
|
docker ps | grep postgres
|
||||||
|
|
||||||
|
# Логи PostgreSQL
|
||||||
|
docker logs global-it24-postgres
|
||||||
|
|
||||||
|
# Последние 50 строк логов
|
||||||
|
docker logs global-it24-postgres --tail 50 -f
|
||||||
|
```
|
||||||
|
|
||||||
|
### Health Check
|
||||||
|
|
||||||
|
```bash
|
||||||
|
# Проверка готовности базы данных
|
||||||
|
docker exec global-it24-postgres pg_isready -U globalit24
|
||||||
|
|
||||||
|
# Должно вывести:
|
||||||
|
# /var/run/postgresql:5432 - accepting connections
|
||||||
|
```
|
||||||
|
|
||||||
|
### Подключение к базе из приложения
|
||||||
|
|
||||||
|
```bash
|
||||||
|
# Проверка переменных окружения в контейнере приложения
|
||||||
|
docker exec global-it24-landing env | grep DATABASE_URL
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 📦 Prisma миграции
|
||||||
|
|
||||||
|
### Применить миграции (после изменений в schema.prisma)
|
||||||
|
|
||||||
|
```bash
|
||||||
|
# Внутри контейнера приложения
|
||||||
|
docker exec -it global-it24-landing sh -c "cd /app && npx prisma migrate deploy"
|
||||||
|
```
|
||||||
|
|
||||||
|
### Создать новую миграцию (в разработке)
|
||||||
|
|
||||||
|
```bash
|
||||||
|
cd nextjs_space
|
||||||
|
yarn prisma migrate dev --name название_миграции
|
||||||
|
```
|
||||||
|
|
||||||
|
### Сгенерировать Prisma Client
|
||||||
|
|
||||||
|
```bash
|
||||||
|
cd nextjs_space
|
||||||
|
yarn prisma generate
|
||||||
|
```
|
||||||
|
|
||||||
|
### Просмотр данных через Prisma Studio (только для разработки)
|
||||||
|
|
||||||
|
```bash
|
||||||
|
cd nextjs_space
|
||||||
|
yarn prisma studio
|
||||||
|
# Откроется на http://localhost:5555
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 🔐 Безопасность
|
||||||
|
|
||||||
|
### Рекомендации:
|
||||||
|
|
||||||
|
1. **Измените пароль по умолчанию**
|
||||||
|
```bash
|
||||||
|
# В .env файле установите сильный пароль
|
||||||
|
POSTGRES_PASSWORD=your_strong_password_here_123!@#
|
||||||
|
```
|
||||||
|
|
||||||
|
2. **Ограничьте доступ к порту PostgreSQL**
|
||||||
|
|
||||||
|
PostgreSQL работает внутри Docker сети и не доступен извне по умолчанию. Это правильно!
|
||||||
|
|
||||||
|
Если нужен внешний доступ (не рекомендуется), добавьте:
|
||||||
|
```yaml
|
||||||
|
ports:
|
||||||
|
- "127.0.0.1:5432:5432" # Только localhost
|
||||||
|
```
|
||||||
|
|
||||||
|
3. **Регулярные бэкапы**
|
||||||
|
|
||||||
|
Настройте автоматический бэкап через cron:
|
||||||
|
```bash
|
||||||
|
crontab -e
|
||||||
|
# Добавьте:
|
||||||
|
0 3 * * * cd /path/to/global_it24_landing && ./backup-db.sh
|
||||||
|
```
|
||||||
|
|
||||||
|
4. **Мониторинг места на диске**
|
||||||
|
```bash
|
||||||
|
# Проверка размера данных PostgreSQL
|
||||||
|
docker exec global-it24-postgres du -sh /var/lib/postgresql/data
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 🛠 Устранение неполадок
|
||||||
|
|
||||||
|
### Проблема: Не могу подключиться к базе данных
|
||||||
|
|
||||||
|
```bash
|
||||||
|
# 1. Проверьте что контейнер запущен
|
||||||
|
docker ps | grep postgres
|
||||||
|
|
||||||
|
# 2. Проверьте логи
|
||||||
|
docker logs global-it24-postgres
|
||||||
|
|
||||||
|
# 3. Проверьте health check
|
||||||
|
docker inspect global-it24-postgres | grep -A 5 Health
|
||||||
|
|
||||||
|
# 4. Попробуйте перезапустить
|
||||||
|
docker compose restart postgres
|
||||||
|
```
|
||||||
|
|
||||||
|
### Проблема: База данных не инициализируется
|
||||||
|
|
||||||
|
```bash
|
||||||
|
# 1. Остановите контейнеры
|
||||||
|
docker compose down
|
||||||
|
|
||||||
|
# 2. Удалите volume (ВНИМАНИЕ: потеря данных!)
|
||||||
|
docker volume rm global_it24_landing_postgres_data
|
||||||
|
|
||||||
|
# 3. Запустите снова
|
||||||
|
./deploy.sh
|
||||||
|
```
|
||||||
|
|
||||||
|
### Проблема: Ошибка миграции Prisma
|
||||||
|
|
||||||
|
```bash
|
||||||
|
# 1. Проверьте DATABASE_URL
|
||||||
|
docker exec global-it24-landing env | grep DATABASE_URL
|
||||||
|
|
||||||
|
# 2. Сбросьте Prisma и примените миграции заново
|
||||||
|
docker exec -it global-it24-landing sh -c "cd /app && npx prisma migrate reset --skip-seed"
|
||||||
|
```
|
||||||
|
|
||||||
|
### Проблема: Медленные запросы
|
||||||
|
|
||||||
|
```sql
|
||||||
|
-- Проверьте размер таблицы
|
||||||
|
SELECT
|
||||||
|
schemaname,
|
||||||
|
tablename,
|
||||||
|
pg_size_pretty(pg_total_relation_size(schemaname||'.'||tablename)) AS size
|
||||||
|
FROM pg_tables
|
||||||
|
WHERE schemaname = 'public';
|
||||||
|
|
||||||
|
-- Создайте индексы для часто используемых полей
|
||||||
|
CREATE INDEX idx_created_at ON contact_submissions(created_at DESC);
|
||||||
|
CREATE INDEX idx_phone ON contact_submissions(phone);
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 📈 Мониторинг
|
||||||
|
|
||||||
|
### Использование ресурсов
|
||||||
|
|
||||||
|
```bash
|
||||||
|
# Статистика контейнера PostgreSQL
|
||||||
|
docker stats global-it24-postgres --no-stream
|
||||||
|
|
||||||
|
# Размер базы данных
|
||||||
|
docker exec global-it24-postgres psql -U globalit24 -d globalit24_db -c "SELECT pg_size_pretty(pg_database_size('globalit24_db'));"
|
||||||
|
```
|
||||||
|
|
||||||
|
### Количество записей
|
||||||
|
|
||||||
|
```bash
|
||||||
|
# Общее количество заявок
|
||||||
|
docker exec global-it24-postgres psql -U globalit24 -d globalit24_db -c "SELECT COUNT(*) FROM contact_submissions;"
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 🔄 Миграция данных
|
||||||
|
|
||||||
|
### Экспорт данных в CSV
|
||||||
|
|
||||||
|
```bash
|
||||||
|
docker exec -t global-it24-postgres psql -U globalit24 -d globalit24_db -c "COPY contact_submissions TO STDOUT WITH CSV HEADER" > submissions_export.csv
|
||||||
|
```
|
||||||
|
|
||||||
|
### Импорт данных из CSV
|
||||||
|
|
||||||
|
```bash
|
||||||
|
cat submissions_import.csv | docker exec -i global-it24-postgres psql -U globalit24 -d globalit24_db -c "COPY contact_submissions FROM STDIN WITH CSV HEADER"
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 📞 Полезные ссылки
|
||||||
|
|
||||||
|
- [Документация PostgreSQL](https://www.postgresql.org/docs/)
|
||||||
|
- [Документация Prisma](https://www.prisma.io/docs/)
|
||||||
|
- [Docker PostgreSQL Image](https://hub.docker.com/_/postgres)
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 💡 Советы по производительности
|
||||||
|
|
||||||
|
1. **Регулярная очистка логов**
|
||||||
|
```bash
|
||||||
|
docker compose logs --tail 100 > logs.txt
|
||||||
|
```
|
||||||
|
|
||||||
|
2. **VACUUM таблицы** (освобождение места после удаления данных)
|
||||||
|
```sql
|
||||||
|
VACUUM ANALYZE contact_submissions;
|
||||||
|
```
|
||||||
|
|
||||||
|
3. **Мониторинг активных подключений**
|
||||||
|
```sql
|
||||||
|
SELECT count(*) FROM pg_stat_activity WHERE datname = 'globalit24_db';
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
**Готово! База данных PostgreSQL полностью настроена и готова к использованию! 🚀**
|
||||||
BIN
DATABASE.pdf
Normal file
BIN
DATABASE.pdf
Normal file
Binary file not shown.
42
backup-db.sh
Executable file
42
backup-db.sh
Executable file
@@ -0,0 +1,42 @@
|
|||||||
|
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
# Скрипт для создания резервной копии базы данных PostgreSQL
|
||||||
|
|
||||||
|
# Настройки
|
||||||
|
BACKUP_DIR="./backups"
|
||||||
|
TIMESTAMP=$(date +%Y%m%d_%H%M%S)
|
||||||
|
BACKUP_FILE="${BACKUP_DIR}/db_backup_${TIMESTAMP}.sql"
|
||||||
|
|
||||||
|
# Создаем директорию для бэкапов если не существует
|
||||||
|
mkdir -p ${BACKUP_DIR}
|
||||||
|
|
||||||
|
echo "🔄 Создание резервной копии базы данных..."
|
||||||
|
echo "📁 Файл: ${BACKUP_FILE}"
|
||||||
|
|
||||||
|
# Создаем бэкап
|
||||||
|
docker exec -t global-it24-postgres pg_dump -U globalit24 globalit24_db > ${BACKUP_FILE}
|
||||||
|
|
||||||
|
if [ $? -eq 0 ]; then
|
||||||
|
echo "✅ Резервная копия успешно создана!"
|
||||||
|
|
||||||
|
# Сжимаем бэкап
|
||||||
|
gzip ${BACKUP_FILE}
|
||||||
|
echo "📦 Архив создан: ${BACKUP_FILE}.gz"
|
||||||
|
|
||||||
|
# Показываем размер
|
||||||
|
SIZE=$(du -h ${BACKUP_FILE}.gz | cut -f1)
|
||||||
|
echo "💾 Размер: ${SIZE}"
|
||||||
|
|
||||||
|
# Удаляем бэкапы старше 30 дней
|
||||||
|
find ${BACKUP_DIR} -name "db_backup_*.sql.gz" -mtime +30 -delete
|
||||||
|
echo "🧹 Старые бэкапы (>30 дней) удалены"
|
||||||
|
|
||||||
|
else
|
||||||
|
echo "❌ Ошибка при создании резервной копии!"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo ""
|
||||||
|
echo "📊 Список всех бэкапов:"
|
||||||
|
ls -lh ${BACKUP_DIR}/db_backup_*.sql.gz 2>/dev/null | tail -10
|
||||||
@@ -2,6 +2,25 @@
|
|||||||
version: '3.8'
|
version: '3.8'
|
||||||
|
|
||||||
services:
|
services:
|
||||||
|
postgres:
|
||||||
|
image: postgres:16-alpine
|
||||||
|
container_name: global-it24-postgres
|
||||||
|
restart: unless-stopped
|
||||||
|
environment:
|
||||||
|
POSTGRES_USER: ${POSTGRES_USER:-globalit24}
|
||||||
|
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD:-changeme123}
|
||||||
|
POSTGRES_DB: ${POSTGRES_DB:-globalit24_db}
|
||||||
|
PGDATA: /var/lib/postgresql/data/pgdata
|
||||||
|
volumes:
|
||||||
|
- postgres_data:/var/lib/postgresql/data
|
||||||
|
healthcheck:
|
||||||
|
test: ["CMD-SHELL", "pg_isready -U ${POSTGRES_USER:-globalit24}"]
|
||||||
|
interval: 10s
|
||||||
|
timeout: 5s
|
||||||
|
retries: 5
|
||||||
|
networks:
|
||||||
|
- app-network
|
||||||
|
|
||||||
global-it24-web:
|
global-it24-web:
|
||||||
build:
|
build:
|
||||||
context: .
|
context: .
|
||||||
@@ -12,9 +31,20 @@ services:
|
|||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
ports:
|
ports:
|
||||||
- "3000:3000"
|
- "3000:3000"
|
||||||
|
depends_on:
|
||||||
|
postgres:
|
||||||
|
condition: service_healthy
|
||||||
environment:
|
environment:
|
||||||
- NODE_ENV=production
|
- NODE_ENV=production
|
||||||
- NEXT_PUBLIC_SITE_URL=${NEXT_PUBLIC_SITE_URL:-https://video.mscsrv.ru}
|
- NEXT_PUBLIC_SITE_URL=${NEXT_PUBLIC_SITE_URL:-https://video.mscsrv.ru}
|
||||||
|
- DATABASE_URL=postgresql://${POSTGRES_USER:-globalit24}:${POSTGRES_PASSWORD:-changeme123}@postgres:5432/${POSTGRES_DB:-globalit24_db}
|
||||||
|
- SMTP_HOST=${SMTP_HOST}
|
||||||
|
- SMTP_PORT=${SMTP_PORT:-465}
|
||||||
|
- SMTP_USER=${SMTP_USER}
|
||||||
|
- SMTP_PASSWORD=${SMTP_PASSWORD}
|
||||||
|
- NOTIFICATION_EMAIL=${NOTIFICATION_EMAIL}
|
||||||
|
- TELEGRAM_BOT_TOKEN=${TELEGRAM_BOT_TOKEN}
|
||||||
|
- TELEGRAM_CHAT_ID=${TELEGRAM_CHAT_ID}
|
||||||
- PORT=3000
|
- PORT=3000
|
||||||
- HOSTNAME=0.0.0.0
|
- HOSTNAME=0.0.0.0
|
||||||
healthcheck:
|
healthcheck:
|
||||||
@@ -23,6 +53,16 @@ services:
|
|||||||
timeout: 10s
|
timeout: 10s
|
||||||
retries: 3
|
retries: 3
|
||||||
start_period: 40s
|
start_period: 40s
|
||||||
|
networks:
|
||||||
|
- app-network
|
||||||
|
|
||||||
# Для работы с внешним Traefik не требуется сеть
|
networks:
|
||||||
|
app-network:
|
||||||
|
driver: bridge
|
||||||
|
|
||||||
|
volumes:
|
||||||
|
postgres_data:
|
||||||
|
driver: local
|
||||||
|
|
||||||
|
# Для работы с внешним Traefik:
|
||||||
# Traefik будет обращаться к контейнеру по IP хоста на порту 3000
|
# Traefik будет обращаться к контейнеру по IP хоста на порту 3000
|
||||||
|
|||||||
Reference in New Issue
Block a user