docs: add compose + node dashboard tasks
This commit is contained in:
@@ -0,0 +1,98 @@
|
||||
# TASK PHASE — DOCKER COMPOSE FIX FOR CITY-SERVICE & POSTGRES
|
||||
|
||||
Version: 1.0
|
||||
Target: NODE1 (production host)
|
||||
|
||||
---
|
||||
|
||||
## 1. Мета
|
||||
|
||||
Привести `docker-compose` до стану, де:
|
||||
|
||||
- `dagi-postgres` використовує існуючий прод-том `microdao-daarion_postgres_data`;
|
||||
- `daarion-city-service` запускається як частина compose-стека (без ручних `docker run`);
|
||||
- перезапуск окремих сервісів не створює “порожні” БД та не ламає production-дані.
|
||||
|
||||
---
|
||||
|
||||
## 2. Поточний стан
|
||||
|
||||
- Postgres вручну запущений із томом `microdao-daarion_postgres_data`.
|
||||
- `daarion-city-service` стартує окремим `docker run` з ENV:
|
||||
- `DATABASE_URL=postgresql://postgres:postgres@dagi-postgres:5432/daarion`
|
||||
- `MATRIX_GATEWAY_URL=http://gateway:9300`
|
||||
- `NATS_URL=nats://dagi-nats:4222`
|
||||
- UI знову показує агенти/мікроDAO/ноди, але схему запуску треба зафіксувати в compose.
|
||||
|
||||
---
|
||||
|
||||
## 3. Завдання
|
||||
|
||||
### 3.1. Оновити `docker-compose` для Postgres
|
||||
|
||||
1. Знайти сервіс `dagi-postgres` та переконатися, що він використовує правильний образ (14 або 15) і запускається на мережі `dagi-network`.
|
||||
2. Прив’язати його до прод-даних:
|
||||
```yaml
|
||||
services:
|
||||
dagi-postgres:
|
||||
image: postgres:15-alpine
|
||||
volumes:
|
||||
- microdao-daarion_postgres_data:/var/lib/postgresql/data
|
||||
environment:
|
||||
POSTGRES_USER: postgres
|
||||
POSTGRES_PASSWORD: postgres
|
||||
POSTGRES_DB: daarion
|
||||
|
||||
volumes:
|
||||
microdao-daarion_postgres_data:
|
||||
external: true
|
||||
```
|
||||
3. Якщо том ще не оголошений як `external`, додати це внизу compose-файла.
|
||||
|
||||
### 3.2. Оновити `docker-compose` для `daarion-city-service`
|
||||
|
||||
1. Додати/оновити сервіс:
|
||||
```yaml
|
||||
daarion-city-service:
|
||||
image: daarion-city-service:latest # або конкретний тег
|
||||
depends_on:
|
||||
- dagi-postgres
|
||||
- dagi-nats
|
||||
- gateway
|
||||
environment:
|
||||
DATABASE_URL: postgresql://postgres:postgres@dagi-postgres:5432/daarion
|
||||
MATRIX_GATEWAY_URL: http://gateway:9300
|
||||
NATS_URL: nats://dagi-nats:4222
|
||||
ports:
|
||||
- "7001:7001"
|
||||
networks:
|
||||
- dagi-network
|
||||
```
|
||||
2. Видалити тимчасовий контейнер, який стартував через `docker run`, після того як compose-версія стабільно працює.
|
||||
|
||||
### 3.3. Документація / запуск без перезапуску всієї інфри
|
||||
|
||||
1. Описати в README/DEPLOY-нотах:
|
||||
```bash
|
||||
docker compose up -d dagi-postgres
|
||||
docker compose up -d daarion-city-service --no-deps
|
||||
```
|
||||
Так не будуть стартувати всі інші сервіси (router, gateway, тощо).
|
||||
2. Додати застереження не запускати `docker compose up` без списку сервісів на production, щоб не з’являлися нові “порожні” контейнери.
|
||||
|
||||
### 3.4. Перевірка після оновлення
|
||||
|
||||
1. `docker ps` → бачимо `dagi-postgres` + `daarion-city-service` (compose-контейнери).
|
||||
2. `curl https://daarion.space/api/nodes/list` та `.../node-1-hetzner-gex44` повертають дані.
|
||||
3. UI `/nodes`, `/agents`, `/microdao` працюють після повного перезапуску обох сервісів.
|
||||
|
||||
---
|
||||
|
||||
## 4. Критерії завершення
|
||||
|
||||
- Postgres і City-service запускаються **тільки** через `docker compose`.
|
||||
- Використовується саме том `microdao-daarion_postgres_data` (жодних нових томів).
|
||||
- Після `docker compose up -d dagi-postgres && docker compose up -d daarion-city-service --no-deps` усі прод-дані залишаються на місці.
|
||||
- Документація містить оновлені інструкції з перезапуску.
|
||||
|
||||
|
||||
Reference in New Issue
Block a user