Update auf Postgres18
This commit is contained in:
parent
603ecefc4a
commit
0330c9fa1e
5 changed files with 15 additions and 7 deletions
|
|
@ -9,7 +9,7 @@ Stand: **Phase 3 plus MCP-Server zentral und je Workspace, Uploads mit DuckDB-An
|
||||||
Voraussetzungen: Docker, [uv](https://docs.astral.sh/uv/), git.
|
Voraussetzungen: Docker, [uv](https://docs.astral.sh/uv/), git.
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
docker compose up -d # PostgreSQL 17 auf 127.0.0.1:55433
|
docker compose up -d # PostgreSQL 18 auf 127.0.0.1:55433
|
||||||
cp .env.example .env
|
cp .env.example .env
|
||||||
uv sync
|
uv sync
|
||||||
uv run aiw gen-key # Ausgabe als AIW_SECRET_KEY in .env eintragen
|
uv run aiw gen-key # Ausgabe als AIW_SECRET_KEY in .env eintragen
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
# PostgreSQL zum Entwickeln und Testen (Daten im Volume aiw-postgres).
|
# PostgreSQL 18 zum Entwickeln und Testen (Daten im Volume aiw-postgres18).
|
||||||
#
|
#
|
||||||
# docker compose up -d # starten
|
# docker compose up -d # starten
|
||||||
# docker compose down # anhalten, Daten bleiben
|
# docker compose down # anhalten, Daten bleiben
|
||||||
|
|
@ -7,12 +7,17 @@
|
||||||
# Datenbanken: aiw (für Web und Worker) und die Verwaltungsdatenbank postgres
|
# Datenbanken: aiw (für Web und Worker) und die Verwaltungsdatenbank postgres
|
||||||
# (für die Tests; jeder Testlauf legt dort eine eigene an und räumt sie ab).
|
# (für die Tests; jeder Testlauf legt dort eine eigene an und räumt sie ab).
|
||||||
# Port 55433, damit es nicht mit Hugin (55432) kollidiert.
|
# Port 55433, damit es nicht mit Hugin (55432) kollidiert.
|
||||||
|
#
|
||||||
|
# Ab PostgreSQL 18 liegen die Daten unter /var/lib/postgresql/18/docker; das Volume hängt deshalb an
|
||||||
|
# /var/lib/postgresql (nicht mehr …/data). Eine neue Hauptversion startet nicht mit den Daten der alten:
|
||||||
|
# lokal mit scripts/dev.sh --reset neu anfangen oder vorher pg_dumpall. Das frühere Volume aiw-postgres
|
||||||
|
# (PostgreSQL 17) bleibt liegen, bis man es löscht: docker volume rm ai-workspace_aiw-postgres
|
||||||
|
|
||||||
name: ai-workspace
|
name: ai-workspace
|
||||||
|
|
||||||
services:
|
services:
|
||||||
postgres:
|
postgres:
|
||||||
image: postgres:17.6
|
image: postgres:18.6
|
||||||
environment:
|
environment:
|
||||||
POSTGRES_USER: aiw
|
POSTGRES_USER: aiw
|
||||||
POSTGRES_PASSWORD: aiw
|
POSTGRES_PASSWORD: aiw
|
||||||
|
|
@ -20,7 +25,7 @@ services:
|
||||||
ports:
|
ports:
|
||||||
- "127.0.0.1:55433:5432"
|
- "127.0.0.1:55433:5432"
|
||||||
volumes:
|
volumes:
|
||||||
- aiw-postgres:/var/lib/postgresql/data
|
- aiw-postgres18:/var/lib/postgresql
|
||||||
healthcheck:
|
healthcheck:
|
||||||
test: ["CMD-SHELL", "pg_isready -U aiw -d aiw"]
|
test: ["CMD-SHELL", "pg_isready -U aiw -d aiw"]
|
||||||
interval: 2s
|
interval: 2s
|
||||||
|
|
@ -49,5 +54,5 @@ services:
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
|
|
||||||
volumes:
|
volumes:
|
||||||
aiw-postgres:
|
aiw-postgres18:
|
||||||
aiw-oracle:
|
aiw-oracle:
|
||||||
|
|
|
||||||
|
|
@ -25,7 +25,7 @@ scripts/dev.sh --reset --oracle # zusätzlich die Oracle-Daten löschen un
|
||||||
`--reset` bringt die lokale Umgebung in den Zustand einer frischen Installation mit Demo:
|
`--reset` bringt die lokale Umgebung in den Zustand einer frischen Installation mit Demo:
|
||||||
|
|
||||||
1. **Prüfen:** Läuft auf dem Web-Port noch etwas (Bifröst), bricht das Skript ab. Ohne Terminal und ohne `--yes` bricht es ebenfalls ab, statt auf eine Antwort zu warten.
|
1. **Prüfen:** Läuft auf dem Web-Port noch etwas (Bifröst), bricht das Skript ab. Ohne Terminal und ohne `--yes` bricht es ebenfalls ab, statt auf eine Antwort zu warten.
|
||||||
2. **Löschen:** PostgreSQL-Container und -Volume (`ai-workspace_aiw-postgres`), also Workspaces, Chats, Nutzer, Modelle, API-Keys, Einstellungen und die Shop-Datenbank der Demo; dazu `data/` (Uploads, Git-Cache, Demo-Repositories) und die Ablagen aus `AIW_UPLOAD_DIR` und `AIW_GIT_CACHE_DIR`, sofern sie im Projekt liegen. Oracle nur mit `--oracle`.
|
2. **Löschen:** PostgreSQL-Container und -Volume (`ai-workspace_aiw-postgres18`), also Workspaces, Chats, Nutzer, Modelle, API-Keys, Einstellungen und die Shop-Datenbank der Demo; dazu `data/` (Uploads, Git-Cache, Demo-Repositories) und die Ablagen aus `AIW_UPLOAD_DIR` und `AIW_GIT_CACHE_DIR`, sofern sie im Projekt liegen. Oracle nur mit `--oracle`.
|
||||||
3. **Aufsetzen wie `--setup`:** Container starten, Migrationen, Demo-Nutzer admin (Plattform-Admin), entwicklung, fachbereich, freigabe.
|
3. **Aufsetzen wie `--setup`:** Container starten, Migrationen, Demo-Nutzer admin (Plattform-Admin), entwicklung, fachbereich, freigabe.
|
||||||
4. **Demo:** DB-Dienst PostgreSQL starten, dann `aiw demo`, also beide Demo-Workspaces samt Shop-Datenbank und registriertem PostgreSQL-Treiber.
|
4. **Demo:** DB-Dienst PostgreSQL starten, dann `aiw demo`, also beide Demo-Workspaces samt Shop-Datenbank und registriertem PostgreSQL-Treiber.
|
||||||
5. **Starten:** Web und Worker wie gewohnt.
|
5. **Starten:** Web und Worker wie gewohnt.
|
||||||
|
|
@ -43,6 +43,8 @@ cd /Users/tom/repos/dev/ai-workspace
|
||||||
docker compose up -d # PostgreSQL auf 127.0.0.1:55433
|
docker compose up -d # PostgreSQL auf 127.0.0.1:55433
|
||||||
```
|
```
|
||||||
|
|
||||||
|
Image und Volume stehen in `docker-compose.yml` (PostgreSQL 18.6, Volume `aiw-postgres18` an `/var/lib/postgresql`). Beim Wechsel der Hauptversion starten die alten Daten nicht mit der neuen: lokal `scripts/dev.sh --reset`, oder vorher `pg_dumpall` und danach einspielen.
|
||||||
|
|
||||||
Nach neuen Migrationen einmal `uv run aiw migrate` ausführen. Fehlt eine Migration, meldet `/ready` den Stand.
|
Nach neuen Migrationen einmal `uv run aiw migrate` ausführen. Fehlt eine Migration, meldet `/ready` den Stand.
|
||||||
|
|
||||||
## 2. Web (Terminal 1)
|
## 2. Web (Terminal 1)
|
||||||
|
|
|
||||||
|
|
@ -4,6 +4,7 @@ Stand: 25.10.2026. Reihenfolge so gewählt, dass spätere Schritte auf früheren
|
||||||
|
|
||||||
## 0. Vorbereitung
|
## 0. Vorbereitung
|
||||||
|
|
||||||
|
- [ ] PostgreSQL 18: nach dem Umstieg `scripts/dev.sh --reset` → Container `postgres:18.6`, Volume `ai-workspace_aiw-postgres18`, `/ready` ok, Shop-Datenbank meldet bei *Verbindung testen* „PostgreSQL 18.6“.
|
||||||
- [ ] Web und Worker neu starten (`scripts/dev.sh`, startet auch den DB-Dienst PostgreSQL); `uv run aiw migrate` (Stand 0028: Rückmeldungen zu Antworten; davor abgeglichene Ordner, Bereich *Repository* und Chats auf bestehenden Branches, Hugin-Anbindung mit Abgleich im Hintergrund, MCP-Verbindungen je Workspace und Datenbanken über Treiber).
|
- [ ] Web und Worker neu starten (`scripts/dev.sh`, startet auch den DB-Dienst PostgreSQL); `uv run aiw migrate` (Stand 0028: Rückmeldungen zu Antworten; davor abgeglichene Ordner, Bereich *Repository* und Chats auf bestehenden Branches, Hugin-Anbindung mit Abgleich im Hintergrund, MCP-Verbindungen je Workspace und Datenbanken über Treiber).
|
||||||
- [ ] *Administration → Tools:* `update_plan`, `merge_target`, `load_skill`, `read_skill_file` und `hugin_feedback` sind neu und gesperrt, bis sie eingestuft sind → *Vorschläge übernehmen*. Die Tools `db_*` gibt es nicht mehr.
|
- [ ] *Administration → Tools:* `update_plan`, `merge_target`, `load_skill`, `read_skill_file` und `hugin_feedback` sind neu und gesperrt, bis sie eingestuft sind → *Vorschläge übernehmen*. Die Tools `db_*` gibt es nicht mehr.
|
||||||
- [ ] Für Abschnitt 9b: Hugin läuft (`scripts/demo.sh` im Hugin-Repository, `http://127.0.0.1:8080`), Key der Integration „Softwareverteilung“ aus `.demo/keys.txt` (siehe [lokal-starten.md](lokal-starten.md#hugin-ausprobieren)).
|
- [ ] Für Abschnitt 9b: Hugin läuft (`scripts/demo.sh` im Hugin-Repository, `http://127.0.0.1:8080`), Key der Integration „Softwareverteilung“ aus `.demo/keys.txt` (siehe [lokal-starten.md](lokal-starten.md#hugin-ausprobieren)).
|
||||||
|
|
|
||||||
|
|
@ -71,7 +71,7 @@ if $RESET; then
|
||||||
fi
|
fi
|
||||||
say "PostgreSQL-Container und -Daten löschen"
|
say "PostgreSQL-Container und -Daten löschen"
|
||||||
docker compose rm -sfv postgres >/dev/null
|
docker compose rm -sfv postgres >/dev/null
|
||||||
docker volume rm -f ai-workspace_aiw-postgres >/dev/null
|
docker volume rm -f ai-workspace_aiw-postgres18 >/dev/null
|
||||||
if $ORACLE; then
|
if $ORACLE; then
|
||||||
say "Oracle-Container und -Daten löschen"
|
say "Oracle-Container und -Daten löschen"
|
||||||
docker compose --profile oracle rm -sfv oracle >/dev/null
|
docker compose --profile oracle rm -sfv oracle >/dev/null
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue