mirror of
https://github.com/blasseye/WikiJs.git
synced 2025-08-25 05:46:53 +02:00
docs: add all untracked content
This commit is contained in:
parent
158e649b98
commit
da31181366
12 changed files with 1209 additions and 46 deletions
144
outils-devops/forgejo.md
Normal file
144
outils-devops/forgejo.md
Normal 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 d’accè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 d’avoir :
|
||||
|
||||
* 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
147
outils-devops/sonarqube.md
Normal 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 d’analyser la qualité du code source et d’identifier 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/)
|
||||
|
Loading…
Add table
Add a link
Reference in a new issue