docs: add all untracked content

This commit is contained in:
WikiJs 2025-07-08 20:59:14 +00:00
parent 158e649b98
commit da31181366
12 changed files with 1209 additions and 46 deletions

144
outils-devops/forgejo.md Normal file
View file

@ -0,0 +1,144 @@
---
title: ForgeJo
description:
published: true
date: 2025-06-30T21:20:00.242Z
tags:
editor: markdown
dateCreated: 2025-06-30T21:13:11.036Z
---
## ✨ Fonctionnalités principales Forgejo
* 🧑‍💻 Gestion complète de dépôts Git (pull requests, branches, tags…)
* 🔐 Contrôle daccès et gestion fine des permissions
* 👥 Organisation en équipes, utilisateurs, organisations
* 📨 Intégration webhooks, notifications, et CI (Actions)
* 🌍 Interface Web responsive et multilingue
* 🔌 API REST et support OAuth2
---
## 🧾 Prérequis
Avant de commencer, assurez-vous davoir :
* Docker et Docker Compose installés sur votre système.
* Un réseau Docker nommé `traefik_net` (créé au préalable si nécessaire).
* Un fichier `.env` contenant les variables suivantes :
```dotenv
SERVICE=forgejo
SERVICE_DB=forgejo_db
DB_NAME=forgejo
DB_USER=forgejo
DB_PASSWORD=motdepassefort
URL=git.mondomaine.tld
```
> 🔐 **Conseil sécurité :** Ne versionnez jamais vos fichiers `.env`.
---
## ⚙️ Fichier `docker-compose.yml`
Créez un fichier `docker-compose.yml` avec ce contenu :
```yaml
services:
forgejo_db:
image: postgres:16
container_name: ${SERVICE_DB}
restart: unless-stopped
environment:
- POSTGRES_DB=${DB_NAME}
- POSTGRES_USER=${DB_USER}
- POSTGRES_PASSWORD=${DB_PASSWORD}
networks:
- forgejo_net
volumes:
- ./data-db:/var/lib/postgresql/data
forgejo:
image: codeberg.org/forgejo/forgejo:11
container_name: ${SERVICE}
restart: unless-stopped
depends_on:
- forgejo_db
environment:
- USER_UID=1000
- USER_GID=1000
- FORGEJO__database__DB_TYPE=postgres
- FORGEJO__database__HOST=${SERVICE_DB}
- FORGEJO__database__NAME=${DB_NAME}
- FORGEJO__database__USER=${DB_USER}
- FORGEJO__database__PASSWD=${DB_PASSWORD}
networks:
- forgejo_net
- traefik_net
volumes:
- ./data:/data
- /etc/timezone:/etc/timezone:ro
- /etc/localtime:/etc/localtime:ro
labels:
- "traefik.enable=true"
- "traefik.http.routers.${SERVICE}.rule=Host(`git.blasseye.fr`)"
- "traefik.http.routers.${SERVICE}.entrypoints=web"
- "traefik.http.services.${SERVICE}.loadbalancer.server.port=3000"
- "traefik.docker.network=traefik_net"
networks:
forgejo_net:
name: forgejo_net
driver: bridge
traefik_net:
external: true
```
---
## 🚀 Démarrage
Démarrez les conteneurs avec :
```bash
docker compose up -d
```
Accédez à votre instance Forgejo via le domaine défini dans `$URL`.
> 🧠 Premier démarrage : vous devrez finaliser la configuration via l'interface web. Vérifiez que les paramètres de la base sont bien ceux du `.env`.
---
## 📁 Arborescence
```
forgejo/
├── docker-compose.yml
├── .env
├── data/
└── data-db/
```
---
## 🧼 Nettoyage
Arrêter et supprimer les conteneurs :
```bash
docker compose down
```
---
## 📚 Ressources utiles
* [Documentation officielle Forgejo](https://forgejo.org/docs/latest/)
* [Image Docker Forgejo](https://codeberg.org/forgejo/-/packages/container/forgejo/11)
* [Comparatif Gitea vs Forgejo](https://forgejo.org/compare-to-gitea/)
---

147
outils-devops/sonarqube.md Normal file
View file

@ -0,0 +1,147 @@
---
title: SonarQube
description: SonarQube est une plateforme open-source de gestion de la qualité du code.
published: true
date: 2025-06-30T21:28:06.087Z
tags:
editor: markdown
dateCreated: 2025-05-06T19:10:28.774Z
---
## 🎯 Objectif
Elle permet danalyser la qualité du code source et didentifier les problèmes techniques dans vos projets. SonarQube offre une vue d'ensemble de la santé de vos projets, avec des informations sur les bugs, les vulnérabilités et les mauvaises pratiques.
---
## 🧾 Prérequis
* Docker & Docker Compose installés
* Un domaine configuré pour accéder à SonarQube (ex: `sonarqube.monsite.fr`)
* Un fichier `.env` contenant les variables suivantes :
```dotenv
SERVICE=sonarqube
SERVICE_DB=sonarqube_db
DB=sonar
DB_USER=sonar
DB_PASSWORD=motdepasse_db
URL=sonarqube.monsite.fr
```
---
## ⚙️ Fichier `docker-compose.yml`
```yaml
services:
sonarqube:
container_name: ${SERVICE}
image: sonarqube:9.9.8-community
depends_on:
- ${SERVICE_DB}
environment:
SONAR_JDBC_URL: jdbc:postgresql://${SERVICE_DB}:5432/${DB}
SONAR_JDBC_USERNAME: ${DB_USER}
SONAR_JDBC_PASSWORD: ${DB_PASSWORD}
volumes:
- sonarqube_conf:/opt/sonarqube/conf
- sonarqube_data:/opt/sonarqube/data
- sonarqube_extensions:/opt/sonarqube/extensions
- sonarqube_logs:/opt/sonarqube/logs
- sonarqube_temp:/opt/sonarqube/temp
networks:
- sonarqube_net
- traefik_net
labels:
- "traefik.enable=true"
- "traefik.http.routers.sonarqube.rule=Host(${URL})"
- "traefik.http.routers.sonarqube.entrypoints=web"
- "traefik.http.services.sonarqube.loadbalancer.server.port=9000"
- "traefik.docker.network=traefik_net"
sonarqube_db:
container_name: ${SERVICE_DB}
image: postgres:13
environment:
POSTGRES_DB: ${DB}
POSTGRES_USER: ${DB_USER}
POSTGRES_PASSWORD: ${DB_PASSWORD}
volumes:
- sonarqube_db:/var/lib/postgresql
- sonarqube_db_data:/var/lib/postgresql/data
networks:
- sonarqube_net
volumes:
sonarqube_conf:
sonarqube_data:
sonarqube_extensions:
sonarqube_logs:
sonarqube_temp:
sonarqube_db:
sonarqube_db_data:
networks:
sonarqube_net:
name: sonarqube_net
driver: bridge
traefik_net:
external: true
```
---
## 🚀 Démarrage
Lancez les services en arrière-plan avec la commande suivante :
```bash
docker-compose up -d
```
Une fois le processus terminé, vous pourrez accéder à **SonarQube** via votre domaine configuré :
🔗 `http://sonarqube.monsite.fr` (ou `https://sonarqube.monsite.fr` si HTTPS est configuré avec Traefik)
---
## 📁 Arborescence recommandée
```
sonarqube/
├── docker-compose.yml
└── .env
```
---
## 🔐 Sécurité & HTTPS
* Le fichier **Traefik** est configuré pour exposer SonarQube via HTTPS (en utilisant **Let's Encrypt** via Traefik).
* Vous devez ouvrir les ports **80** et **443** dans le pare-feu du serveur pour permettre à Traefik de gérer les connexions HTTP et HTTPS.
* Assurez-vous que le domaine `sonarqube.monsite.fr` pointe vers l'IP de votre serveur.
---
## 🧼 Nettoyage
Pour arrêter les services sans supprimer les volumes (les données de SonarQube seront conservées) :
```bash
docker-compose down
```
Pour arrêter et supprimer les volumes, ce qui efface les données :
```bash
docker-compose down -v
```
---
## 📚 Ressources utiles
* [SonarQube Documentation](https://docs.sonarqube.org/)
* [Image Docker officielle SonarQube](https://hub.docker.com/_/sonarqube)
* [Image Docker officielle PostgreSQL](https://hub.docker.com/_/postgres)
* [Traefik avec Docker](https://doc.traefik.io/traefik/providers/docker/)