148 lines
3.8 KiB
Markdown
Executable File
148 lines
3.8 KiB
Markdown
Executable File
# Wiki Setup mit Obsidian Quartz
|
|
|
|
## Übersicht
|
|
|
|
Das Wiki wurde erfolgreich in die doing-it.de Website integriert. Es verwendet Obsidian Quartz als statischen Site-Generator und läuft als Docker-Container.
|
|
|
|
## Struktur
|
|
|
|
```
|
|
doing-it.de/
|
|
├── wiki-vault/ # Obsidian Vault mit Markdown-Dateien
|
|
│ ├── Home.md
|
|
│ ├── IT-Grundlagen.md
|
|
│ ├── Schulungsmethoden.md
|
|
│ └── Ressourcen.md
|
|
├── quartz-setup/ # Quartz Docker Setup
|
|
│ ├── Dockerfile
|
|
│ ├── entrypoint.sh
|
|
│ ├── package.json
|
|
│ └── quartz.config.ts
|
|
├── app/wiki/ # Next.js Wiki-Seite
|
|
│ └── page.tsx
|
|
└── docker-compose.yml # Erweitert um Wiki-Service
|
|
```
|
|
|
|
## Was wurde implementiert
|
|
|
|
### 1. Obsidian Vault (`wiki-vault/`)
|
|
- Enthält Beispiel-Markdown-Dateien
|
|
- Kann durch eigene Obsidian-Vault-Dateien ersetzt werden
|
|
|
|
### 2. Quartz Docker Setup (`quartz-setup/`)
|
|
- Dockerfile: Klont Quartz Repository und richtet es ein
|
|
- entrypoint.sh: Baut die Quartz-Site und startet den Server
|
|
- Fallback: Erstellt einfache statische Site, falls Quartz-Build fehlschlägt
|
|
|
|
### 3. Docker Compose Service
|
|
- Service `wiki` läuft auf Port 8080
|
|
- Bindet `wiki-vault` als Volume ein
|
|
- Build-Output in `quartz-setup/public`
|
|
|
|
### 4. Next.js Integration
|
|
- Neue Seite unter `/wiki`
|
|
- Wiki-Link in Navigation (Desktop & Mobile)
|
|
- Link zur Quartz-Instanz auf Port 8080
|
|
|
|
## Testing & Debugging in PowerShell
|
|
|
|
### 1. Docker Compose Validierung
|
|
```powershell
|
|
docker-compose config
|
|
```
|
|
|
|
### 2. Wiki-Service bauen
|
|
```powershell
|
|
docker-compose build wiki
|
|
```
|
|
|
|
### 3. Alle Services starten
|
|
```powershell
|
|
docker-compose up -d
|
|
```
|
|
|
|
### 4. Logs prüfen
|
|
```powershell
|
|
# Alle Logs
|
|
docker-compose logs
|
|
|
|
# Nur Wiki-Logs
|
|
docker-compose logs wiki
|
|
|
|
# Follow Logs (Live)
|
|
docker-compose logs -f wiki
|
|
```
|
|
|
|
### 5. Container-Status prüfen
|
|
```powershell
|
|
docker-compose ps
|
|
docker ps -a
|
|
```
|
|
|
|
### 6. In Container einsteigen (falls nötig)
|
|
```powershell
|
|
docker-compose exec wiki sh
|
|
```
|
|
|
|
### 7. Services stoppen
|
|
```powershell
|
|
docker-compose down
|
|
```
|
|
|
|
### 8. Alles neu bauen
|
|
```powershell
|
|
docker-compose down
|
|
docker-compose build --no-cache
|
|
docker-compose up -d
|
|
```
|
|
|
|
## Erwartete Ports
|
|
|
|
- **Next.js Web**: http://localhost:3001
|
|
- **Wiki (Quartz)**: http://localhost:8080
|
|
|
|
## Häufige Probleme
|
|
|
|
### Problem: Quartz Build schlägt fehl
|
|
**Lösung**: Der Entrypoint-Script erstellt automatisch einen Fallback mit einfacher HTML-Seite. Die Markdown-Dateien werden trotzdem angezeigt.
|
|
|
|
### Problem: Port 8080 bereits belegt
|
|
**Lösung**: Port in `docker-compose.yml` ändern:
|
|
```yaml
|
|
ports:
|
|
- "8081:8080" # Ändere 8081 zu gewünschtem Port
|
|
```
|
|
|
|
### Problem: Container startet nicht
|
|
**Lösung**:
|
|
1. Logs prüfen: `docker-compose logs wiki`
|
|
2. Container neu bauen: `docker-compose build --no-cache wiki`
|
|
3. Container-Status: `docker ps -a`
|
|
|
|
### Problem: Keine Inhalte im Wiki
|
|
**Lösung**:
|
|
1. Prüfen ob `wiki-vault` Dateien enthält
|
|
2. Volume-Mount prüfen: `docker-compose exec wiki ls -la /app/content`
|
|
3. Container neu starten: `docker-compose restart wiki`
|
|
|
|
## Wiki-Inhalte aktualisieren
|
|
|
|
1. Markdown-Dateien in `wiki-vault/` bearbeiten oder hinzufügen
|
|
2. Container neu starten: `docker-compose restart wiki`
|
|
3. Oder für kompletten Rebuild: `docker-compose up -d --build wiki`
|
|
|
|
## Navigation
|
|
|
|
Der Wiki-Link wurde zur Navigation hinzugefügt:
|
|
- Desktop: Zwischen "Über uns" und "Kontakt"
|
|
- Mobile: Im Hamburger-Menü
|
|
|
|
Die Wiki-Seite (`/wiki`) zeigt einen Link zur Quartz-Instanz, der in einem neuen Tab geöffnet wird.
|
|
|
|
## Nächste Schritte
|
|
|
|
1. Eigene Obsidian-Vault-Dateien in `wiki-vault/` kopieren
|
|
2. Quartz-Konfiguration in `quartz-setup/quartz.config.ts` anpassen
|
|
3. Wiki-Styling an Website-Design anpassen (falls gewünscht)
|
|
|