itcloud/DEPLOYMENT.md

96 lines
2.6 KiB
Markdown
Raw Normal View History

2025-12-30 14:51:56 +01:00
# Инструкция по развертыванию
## Текущая конфигурация (разработка)
Сейчас проект настроен для локальной сети на IP `192.168.1.8`:
- Frontend: http://192.168.1.8:8095
- Backend: http://192.168.1.8:8094
- MinIO Console: http://192.168.1.8:9091
## Переход на домен (production)
Когда будете ставить на домен, просто отредактируйте файл `.env`:
### Вариант 1: Домен без поддомена
```bash
# .env
SERVER_IP=yourdomain.com
CORS_ORIGINS=https://yourdomain.com,https://www.yourdomain.com
VITE_API_URL=https://yourdomain.com:8094
# Рекомендуется сменить порты на стандартные через nginx:
# FRONTEND_PORT=80 (или 443 для HTTPS)
# BACKEND_PORT=8080 (скрыть за nginx reverse proxy)
```
### Вариант 2: С поддоменом для API (рекомендуется)
```bash
# .env
SERVER_IP=yourdomain.com
CORS_ORIGINS=https://yourdomain.com,https://www.yourdomain.com,https://api.yourdomain.com
VITE_API_URL=https://api.yourdomain.com
# Настроить nginx reverse proxy:
# yourdomain.com -> frontend:8095
# api.yourdomain.com -> backend:8094
```
### Обязательно измените в production:
```bash
JWT_SECRET=ваш-очень-длинный-случайный-секретный-ключ
MINIO_ROOT_USER=ваш-логин
MINIO_ROOT_PASSWORD=ваш-сильный-пароль
```
## Настройка HTTPS (nginx + Let's Encrypt)
Создайте `nginx.conf`:
```nginx
# Frontend
server {
listen 80;
server_name yourdomain.com www.yourdomain.com;
location / {
proxy_pass http://localhost:8095;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
}
}
# Backend API
server {
listen 80;
server_name api.yourdomain.com;
location / {
proxy_pass http://localhost:8094;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
}
```
Затем установите SSL сертификаты:
```bash
sudo certbot --nginx -d yourdomain.com -d www.yourdomain.com -d api.yourdomain.com
```
## Быстрая смена конфигурации
1. Отредактируйте `.env`
2. Перезапустите контейнеры:
```bash
docker-compose down
docker-compose up -d
```
Готово! 🚀