docs(assets): Add DNS setup and migration instructions
This commit is contained in:
127
docs/ASSETS_DNS_SETUP.md
Normal file
127
docs/ASSETS_DNS_SETUP.md
Normal file
@@ -0,0 +1,127 @@
|
||||
# Налаштування DNS та Reverse Proxy для assets.daarion.space
|
||||
|
||||
## Крок 1: Налаштування DNS
|
||||
|
||||
### Cloudflare (рекомендовано)
|
||||
|
||||
1. Увійдіть в Cloudflare Dashboard
|
||||
2. Виберіть домен `daarion.space`
|
||||
3. Перейдіть в **DNS** → **Records**
|
||||
4. Додайте новий A record:
|
||||
- **Type**: A
|
||||
- **Name**: `assets`
|
||||
- **IPv4 address**: `144.76.224.179` (IP NODE1)
|
||||
- **Proxy status**: 🟡 Proxied (або ⚪ DNS only)
|
||||
- **TTL**: Auto
|
||||
5. Натисніть **Save**
|
||||
|
||||
### Альтернативні DNS провайдери
|
||||
|
||||
Якщо використовуєте інший DNS провайдер, додайте A record:
|
||||
- **Host**: `assets`
|
||||
- **Type**: A
|
||||
- **Value**: `144.76.224.179`
|
||||
- **TTL**: 3600 (або Auto)
|
||||
|
||||
## Крок 2: Перевірка DNS
|
||||
|
||||
Після додавання DNS запису, зачекайте 1-5 хвилин та перевірте:
|
||||
|
||||
```bash
|
||||
dig assets.daarion.space +short
|
||||
# Має повернути: 144.76.224.179
|
||||
|
||||
# Або
|
||||
nslookup assets.daarion.space
|
||||
```
|
||||
|
||||
## Крок 3: Отримання SSL сертифікату
|
||||
|
||||
Після того як DNS запрацює, на сервері виконайте:
|
||||
|
||||
```bash
|
||||
ssh root@144.76.224.179
|
||||
|
||||
# Отримати сертифікат
|
||||
certbot certonly --nginx -d assets.daarion.space --non-interactive --agree-tos --email admin@daarion.space
|
||||
|
||||
# Або через webroot (якщо NGINX не працює)
|
||||
certbot certonly --webroot -w /var/www/html -d assets.daarion.space --non-interactive --agree-tos --email admin@daarion.space
|
||||
```
|
||||
|
||||
## Крок 4: Активація SSL в NGINX
|
||||
|
||||
Після отримання сертифікату, активуйте SSL в конфігурації:
|
||||
|
||||
```bash
|
||||
ssh root@144.76.224.179
|
||||
|
||||
# Відновити SSL директиви
|
||||
cd /opt/microdao-daarion
|
||||
cp nginx/assets_daarion_space.conf /etc/nginx/conf.d/
|
||||
|
||||
# Перевірити конфігурацію
|
||||
nginx -t
|
||||
|
||||
# Перезапустити NGINX
|
||||
systemctl reload nginx
|
||||
```
|
||||
|
||||
## Крок 5: Перевірка
|
||||
|
||||
```bash
|
||||
# Перевірити HTTP redirect
|
||||
curl -I http://assets.daarion.space
|
||||
|
||||
# Перевірити HTTPS
|
||||
curl -I https://assets.daarion.space/minio/health/live
|
||||
|
||||
# Перевірити доступ до bucket
|
||||
curl https://assets.daarion.space/daarion-assets/
|
||||
```
|
||||
|
||||
## Крок 6: Міграція Assets
|
||||
|
||||
Після налаштування DNS та SSL, мігруйте існуючі assets:
|
||||
|
||||
```bash
|
||||
ssh root@144.76.224.179
|
||||
cd /opt/microdao-daarion
|
||||
|
||||
# Dry run (перевірка що буде мігровано)
|
||||
python3 scripts/migrate_assets_to_minio.py --dry-run
|
||||
|
||||
# Реальна міграція
|
||||
python3 scripts/migrate_assets_to_minio.py
|
||||
|
||||
# Оновити URLs в базі даних
|
||||
python3 scripts/update_db_asset_urls.py --dry-run # спочатку перевірка
|
||||
python3 scripts/update_db_asset_urls.py # реальне оновлення
|
||||
```
|
||||
|
||||
## Troubleshooting
|
||||
|
||||
### DNS не працює
|
||||
|
||||
1. Перевірте що A record створено правильно
|
||||
2. Зачекайте до 24 годин (зазвичай 5-15 хвилин)
|
||||
3. Перевірте через `dig` або `nslookup`
|
||||
|
||||
### Certbot не може отримати сертифікат
|
||||
|
||||
1. Переконайтеся що DNS працює (`dig assets.daarion.space`)
|
||||
2. Перевірте що порт 80 доступний з інтернету
|
||||
3. Спробуйте DNS challenge: `certbot certonly --manual --preferred-challenges dns -d assets.daarion.space`
|
||||
|
||||
### NGINX не запускається
|
||||
|
||||
1. Перевірте конфігурацію: `nginx -t`
|
||||
2. Перевірте логи: `journalctl -xeu nginx.service`
|
||||
3. Перевірте чи порт 80/443 не зайнятий: `netstat -tlnp | grep -E ':80|:443'`
|
||||
|
||||
### MinIO не доступний
|
||||
|
||||
1. Перевірте що MinIO контейнер працює: `docker ps | grep minio`
|
||||
2. Перевірте що MinIO слухає на 9000: `curl http://localhost:9000/minio/health/live`
|
||||
3. Перевірте bucket: `docker exec daarion-minio mc ls local/daarion-assets`
|
||||
|
||||
Reference in New Issue
Block a user