entities/wiki-web.md
... ...
@@ -7,9 +7,9 @@ tags: [wiki, container, hermes, infra]
7 7
sources: [/docker/wiki/]
8 8
---
9 9
10
-# Wiki Web (Docsify)
10
+# Wiki Web (Gollum)
11 11
12
-Interface web du wiki partagé Hermes, accessible publiquement (protégé par noindex).
12
+Interface web du wiki partagé Hermes. Moteur wiki complet avec sidebar, recherche, historique.
13 13
14 14
## URLs
15 15
... ...
@@ -18,36 +18,44 @@ Interface web du wiki partagé Hermes, accessible publiquement (protégé par no
18 18
19 19
## Stack
20 20
21
-- **Base** : `nginx:alpine` (image custom dans `/docker/wiki/Dockerfile`)
22
-- **Renderer** : [Docsify](https://docsify.js.org) (markdown côté client, zero build)
23
-- **Source** : `/root/wiki/` monté en read-only (`:ro`)
24
-- **Reverse proxy** : Traefik avec Let's Encrypt
21
+- **Image** : `gollumwiki/gollum:latest` (le wiki engine de GitHub)
22
+- **Port** : `127.0.0.1:4570→4567`
23
+- **Source** : `/root/wiki/` (repo git, monté rw pour l'index)
24
+- **Reverse proxy** : Traefik + Let's Encrypt
25
+
26
+## Features
27
+
28
+- **Wikilinks** `[[page]]` natifs
29
+- **Sidebar** automatique (navigation entre pages)
30
+- **Recherche** full-text
31
+- **Historique** git (chaque commit = version)
32
+- **Mode read-only** (`--no-edit` : pas d'édition web)
33
+- **SEO** : `X-Robots-Tag: noindex` (wiki privé)
25 34
26 35
## Fichiers
27 36
28 37
```
29 38
/docker/wiki/
30 39
├── .env # TZ, TRAEFIK_HOST, COMPOSE_PROJECT_NAME
31
-├── Dockerfile # FROM nginx:alpine
32
-├── docker-compose.yml # Port 4570:80, labels Traefik
33
-├── index.html # Docsify SPA avec thème sombre
34
-└── nginx.conf # try_files → SPA fallback
40
+├── docker-compose.yml # Gollum + labels Traefik
41
+├── Dockerfile # (obsolète — plus utilisé)
42
+├── nginx.conf # (obsolète — plus utilisé)
43
+└── index.html # (obsolète — plus utilisé)
35 44
```
36 45
37
-## Particularités
38
-
39
-- **Read-only** : le volume `/root/wiki` est en `:ro` → pas de modification via le web
40
-- **Recherche** : activée côté client (docsify search plugin)
41
-- **Wikilinks** : les `[[liens]]` sont gérés nativement par Docsify
42
-- **SEO** : `X-Robots-Tag: noindex, nofollow` (wiki privé)
43
-- **Syntax highlighting** : bash, python, yaml, json, docker
44
-
45 46
## Commandes
46 47
47 48
```bash
48
-# Redémarrer après modif du wiki
49
+# Redémarrer
49 50
docker compose -f /docker/wiki/docker-compose.yml restart
50 51
51
-# Reconstruire l'image
52
-docker compose -f /docker/wiki/docker-compose.yml up -d --build
52
+# Reconstruire (pull nouvelle image)
53
+docker compose -f /docker/wiki/docker-compose.yml pull && docker compose up -d
53 54
```
55
+
56
+## Particularités
57
+
58
+- `/root/wiki` est maintenant un **repo git** (nécessaire pour Gollum)
59
+- Page d'accueil : `Home.md` → symlink vers `index.md`
60
+- `user: root` dans le conteneur (sinon pb permissions sur bind mount)
61
+- Le wiki backup (`hermes-config/wiki/`) n'est pas un repo git (le .git est exclu)