docs: fusion olhar-api dans olhar, mise à jour wiki
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
+6
@@ -1,5 +1,11 @@
|
|||||||
# Changelog
|
# Changelog
|
||||||
|
|
||||||
|
## 2026-06-08 — Fusion olhar-api dans olhar : compose unifié (db + api + pwa)
|
||||||
|
|
||||||
|
- `Home.md` — suppression de la ligne `olhar-api/` ; entrée `olhar/` mise à jour pour mentionner API + PWA + BDD
|
||||||
|
- `Installation-Production.md` — sections 8 (Olhar API) et 9 (Olhar) fusionnées en une seule section 8 ; ajout de `JWT_SECRET` dans les variables requises ; ordre de démarrage renuméroté (11 étapes au lieu de 12)
|
||||||
|
- `Mise-a-jour-Applications.md` — sections rollback Olhar API et Olhar fusionnées ; `olhar-api` supprimé de la boucle de mise à jour globale
|
||||||
|
|
||||||
## 2026-06-07 — Ajout des fichiers .env.example et extraction des secrets hardcodés
|
## 2026-06-07 — Ajout des fichiers .env.example et extraction des secrets hardcodés
|
||||||
|
|
||||||
- `Installation-Production.md` — sections Gitea, Bonsai API, Olhar API, Nextcloud : instructions mises à jour pour utiliser `cp .env.example .env` ; ajout de la variable `GITEA_RUNNER_REGISTRATION_TOKEN` ; ajout des variables pgAdmin dans Nextcloud
|
- `Installation-Production.md` — sections Gitea, Bonsai API, Olhar API, Nextcloud : instructions mises à jour pour utiliser `cp .env.example .env` ; ajout de la variable `GITEA_RUNNER_REGISTRATION_TOKEN` ; ajout des variables pgAdmin dans Nextcloud
|
||||||
|
|||||||
+1
-2
@@ -36,8 +36,7 @@ Internet
|
|||||||
| Luz | `luz/` | `luz.goutailler-olivier.com` |
|
| Luz | `luz/` | `luz.goutailler-olivier.com` |
|
||||||
| Nextcloud | `nextcloud/` | `cloud.goutailler-olivier.com` |
|
| Nextcloud | `nextcloud/` | `cloud.goutailler-olivier.com` |
|
||||||
| Trilium | `trilium/` | `notes.goutailler-olivier.com` |
|
| Trilium | `trilium/` | `notes.goutailler-olivier.com` |
|
||||||
| Olhar API | `olhar-api/` | `olhar.goutailler-olivier.com/api` |
|
| Olhar | `olhar/` | `olhar.goutailler-olivier.com` (API + PWA + BDD) |
|
||||||
| Olhar | `olhar/` | `olhar.goutailler-olivier.com` |
|
|
||||||
| Watchtower | `watchtower/` | `watchtower.goutailler-olivier.com` |
|
| Watchtower | `watchtower/` | `watchtower.goutailler-olivier.com` |
|
||||||
|
|
||||||
## Pages
|
## Pages
|
||||||
|
|||||||
+27
-40
@@ -165,54 +165,42 @@ L'image `git.goutailler-olivier.com/gato/luz:latest` est construite par la CI Gi
|
|||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
## 8. Olhar API
|
## 8. Olhar
|
||||||
|
|
||||||
L'image est construite par la CI Gitea et poussée sur le registre `git.goutailler-olivier.com/gato/olhar-api:latest`.
|
Le dossier `olhar/` regroupe les trois services de l'application : la base PostgreSQL, l'API Spring Boot et la PWA Angular. Les images sont construites par la CI Gitea.
|
||||||
|
|
||||||
```bash
|
|
||||||
cd olhar-api/
|
|
||||||
cp .env.example .env
|
|
||||||
# Éditer .env avec un mot de passe sécurisé
|
|
||||||
docker compose up -d
|
|
||||||
```
|
|
||||||
|
|
||||||
Variables d'environnement :
|
|
||||||
|
|
||||||
| Variable | Description |
|
|
||||||
|---|---|
|
|
||||||
| `POSTGRES_PASSWORD` | Mot de passe PostgreSQL (injecté via `.env`) |
|
|
||||||
| `DATASOURCE_URL` | `jdbc:postgresql://db:5432/olhar` (défaut réseau interne) |
|
|
||||||
| `KEYCLOAK_JWKS_URI` | `https://auth.goutailler-olivier.com/realms/olhar/protocol/openid-connect/certs` |
|
|
||||||
| `CORS_ALLOWED_ORIGIN_PROD` | `https://olhar.goutailler-olivier.com` |
|
|
||||||
|
|
||||||
Flyway applique automatiquement les migrations SQL au démarrage.
|
|
||||||
|
|
||||||
**Secrets Gitea à configurer au niveau de l'organisation `gato` :**
|
|
||||||
|
|
||||||
| Secret | Description |
|
|
||||||
|---|---|
|
|
||||||
| `RELEASE_TOKEN` | Token Gitea avec droits `write:packages` et `write:repository` |
|
|
||||||
| `WATCHTOWER_TOKEN` | Token HTTP de l'API Watchtower pour déclencher le redéploiement (voir section 12) |
|
|
||||||
| `SERVER_HOST` | Adresse IP ou hostname du serveur de production |
|
|
||||||
| `SERVER_SSH_KEY` | Clé SSH privée pour accéder au serveur |
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## 9. Olhar
|
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
cd olhar/
|
cd olhar/
|
||||||
|
cp .env.example .env
|
||||||
|
# Éditer .env avec des valeurs sécurisées
|
||||||
docker compose up -d
|
docker compose up -d
|
||||||
```
|
```
|
||||||
|
|
||||||
L'image `git.goutailler-olivier.com/gato/olhar:latest` est construite par la CI Gitea lors d'une release. Aucune variable d'environnement spécifique n'est requise.
|
Variables à définir dans `.env` :
|
||||||
|
|
||||||
|
| Variable | Description |
|
||||||
|
|---|---|
|
||||||
|
| `POSTGRES_PASSWORD` | Mot de passe PostgreSQL partagé entre `db` et `api` |
|
||||||
|
| `JWT_SECRET` | Secret de signature JWT — générer avec `openssl rand -hex 32` |
|
||||||
|
|
||||||
|
Variables d'environnement codées en dur dans le compose :
|
||||||
|
|
||||||
|
| Variable | Valeur |
|
||||||
|
|---|---|
|
||||||
|
| `DATASOURCE_URL` | `jdbc:postgresql://db:5432/olhar` (réseau interne `olhar-net`) |
|
||||||
|
| `CORS_ALLOWED_ORIGIN_PROD` | `https://olhar.goutailler-olivier.com` |
|
||||||
|
| `PHOTOS_STORAGE_PATH` | `/app/uploads` (monté sur `~/Applications/data/olhar/uploads`) |
|
||||||
|
|
||||||
|
Flyway applique automatiquement les migrations SQL au démarrage de l'API.
|
||||||
|
|
||||||
**Secrets Gitea à configurer au niveau de l'organisation `gato` :**
|
**Secrets Gitea à configurer au niveau de l'organisation `gato` :**
|
||||||
|
|
||||||
| Secret | Description |
|
| Secret | Description |
|
||||||
|---|---|
|
|---|---|
|
||||||
| `RELEASE_TOKEN` | Token Gitea avec droits `write:packages` et `write:repository` |
|
| `RELEASE_TOKEN` | Token Gitea avec droits `write:packages` et `write:repository` |
|
||||||
| `WATCHTOWER_TOKEN` | Token HTTP de l'API Watchtower pour déclencher le redéploiement (voir section 12) |
|
| `WATCHTOWER_TOKEN` | Token HTTP de l'API Watchtower pour déclencher le redéploiement (voir section 11) |
|
||||||
|
| `SERVER_HOST` | Adresse IP ou hostname du serveur de production |
|
||||||
|
| `SERVER_SSH_KEY` | Clé SSH privée pour accéder au serveur |
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
@@ -305,11 +293,10 @@ Le même token doit être ajouté comme secret `WATCHTOWER_TOKEN` dans les param
|
|||||||
5. Bonsai API
|
5. Bonsai API
|
||||||
6. Bonsai Webapp
|
6. Bonsai Webapp
|
||||||
7. Luz
|
7. Luz
|
||||||
8. Olhar API
|
8. Olhar (db + api + pwa)
|
||||||
9. Olhar
|
9. Nextcloud
|
||||||
10. Nextcloud
|
10. Trilium
|
||||||
11. Trilium
|
11. Watchtower
|
||||||
12. Watchtower
|
|
||||||
```
|
```
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|||||||
+12
-12
@@ -160,9 +160,17 @@ docker start bonsai-api
|
|||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
## Rollback Olhar API (avec ou sans restauration BDD)
|
## Rollback Olhar (API + PWA, avec ou sans restauration BDD)
|
||||||
|
|
||||||
1. Aller dans **Gitea → Olhar-api → Actions → Rollback → Run workflow**
|
### Rollback de la PWA
|
||||||
|
|
||||||
|
1. Aller dans **Gitea → Olhar → Actions → Rollback → Run workflow**
|
||||||
|
2. Saisir la version cible (ex. `v1.2.3`)
|
||||||
|
3. Lancer — Watchtower redéploie automatiquement
|
||||||
|
|
||||||
|
### Rollback de l'API (avec ou sans restauration BDD)
|
||||||
|
|
||||||
|
1. Aller dans **Gitea → Olhar → Actions → Rollback → Run workflow**
|
||||||
2. Saisir la version cible (ex. `v1.2.3`)
|
2. Saisir la version cible (ex. `v1.2.3`)
|
||||||
3. Choisir `restore_db` :
|
3. Choisir `restore_db` :
|
||||||
- `no` (défaut) — rollback du code uniquement (migrations Flyway compatibles)
|
- `no` (défaut) — rollback du code uniquement (migrations Flyway compatibles)
|
||||||
@@ -170,22 +178,14 @@ docker start bonsai-api
|
|||||||
|
|
||||||
> **Attention** : `restore_db=yes` écrase toutes les données créées depuis le déploiement à annuler. À réserver aux cas où la migration de schéma est incompatible avec l'ancienne version.
|
> **Attention** : `restore_db=yes` écrase toutes les données créées depuis le déploiement à annuler. À réserver aux cas où la migration de schéma est incompatible avec l'ancienne version.
|
||||||
|
|
||||||
Les backups sont stockés dans `/opt/backups/olhar-api/` sur le serveur.
|
Les backups sont stockés dans `/opt/backups/olhar/` sur le serveur.
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## Rollback Olhar
|
|
||||||
|
|
||||||
1. Aller dans **Gitea → Olhar → Actions → Rollback → Run workflow**
|
|
||||||
2. Saisir la version cible (ex. `v1.2.3`)
|
|
||||||
3. Lancer — Watchtower redéploie automatiquement
|
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
## Mettre à jour tous les services d'un coup
|
## Mettre à jour tous les services d'un coup
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
for dir in traefik keycloak gitea bonsai-api bonsai-webapp luz olhar-api olhar nextcloud trilium; do
|
for dir in traefik keycloak gitea bonsai-api bonsai-webapp luz olhar nextcloud trilium; do
|
||||||
echo "=== $dir ==="
|
echo "=== $dir ==="
|
||||||
(cd "$dir" && docker compose pull && docker compose up -d)
|
(cd "$dir" && docker compose pull && docker compose up -d)
|
||||||
done
|
done
|
||||||
|
|||||||
Reference in New Issue
Block a user