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

142
applications/wordpress.md Normal file
View file

@ -0,0 +1,142 @@
---
title: Wordpress
description: WordPress est un CMS (Content Management System) open source, puissant et flexible, idéal pour créer un site web, un blog ou même une boutique en ligne avec WooCommerce.
published: true
date: 2025-06-30T21:03:33.648Z
tags:
editor: markdown
dateCreated: 2025-05-06T19:02:21.559Z
---
Cette documentation présente un déploiement de WordPress à laide de **Docker Compose**, avec une base de données **MySQL**, et une exposition du site en HTTPS via **Traefik**, utilisant des **variables denvironnement dans les labels** pour une configuration facilement réutilisable.
---
## 🧾 Prérequis
* Docker & Docker Compose installés
* Un domaine configuré (ex: `mon-site.fr`) pointant vers votre serveur
* Un fichier `.env` contenant les variables suivantes :
```dotenv
SERVICE=wordpress
SERVICE_DB=wordpress_db
DB_ROOT_PASSWORD=motdepasse_root
DB_NAME=wordpress
DB_USER=wordpress
DB_PASSWORD=motdepasse_user
URL=mon-site.fr
```
---
## ⚙️ Fichier `docker-compose.yml`
```yaml
services:
wordpress_db:
image: mysql:8
container_name: wordpress_db
restart: unless-stopped
environment:
- MYSQL_ROOT_PASSWORD=${DB_ROOT_PASSWORD}
- MYSQL_DATABASE=${DB_NAME}
- MYSQL_USER=${DB_USER}
- MYSQL_PASSWORD=${DB_PASSWORD}
volumes:
- ./data-db:/var/lib/mysql
networks:
- wordpress_net
wordpress:
image: wordpress:6.8.1
container_name: ${SERVICE}
restart: unless-stopped
environment:
- WORDPRESS_DB_HOST=${SERVICE_DB}
- WORDPRESS_DB_NAME=${DB_NAME}
- WORDPRESS_DB_USER=${DB_USER}
- WORDPRESS_DB_PASSWORD=${DB_PASSWORD}
volumes:
- ./data:/var/www/html
networks:
- wordpress_net
- traefik_net
labels:
- "traefik.enable=true"
- "traefik.http.routers.${SERVICE}.entrypoints=websecure"
- "traefik.http.routers.${SERVICE}.rule=Host(`${URL}`)"
- "traefik.http.services.${SERVICE}.loadbalancer.server.port=80"
- "traefik.http.routers.${SERVICE}.tls=true"
- "traefik.http.routers.${SERVICE}.tls.certresolver=http"
- "traefik.docker.network=traefik_net"
networks:
wordpress_net:
name: wordpress_net
driver: bridge
traefik_net:
external: true
```
---
## 🚀 Démarrage
Lancez les services en arrière-plan :
```bash
docker compose up -d
```
Si tout est bien configuré, vous pouvez accéder à WordPress à l'adresse :
🔗 `https://mon-site.fr`
---
## 📁 Arborescence recommandée
```
wordpress/
├── docker-compose.yml
├── .env
├── data/
└── data-db/
```
---
## 🔐 Sécurité & HTTPS
* Ce setup active le **HTTPS automatique** grâce à **Let's Encrypt**, via Traefik.
* Assurez-vous que les ports **80** et **443** sont ouverts sur le pare-feu de votre serveur.
* Votre domaine (`mon-site.fr`) doit pointer vers ladresse IP publique du serveur Docker/Traefik.
* Le `certresolver=http` doit être défini dans la configuration statique de **Traefik**.
---
## 🧼 Nettoyage
Pour arrêter les conteneurs :
```bash
docker compose down
```
Pour les supprimer avec les volumes (base de données incluse) :
```bash
docker compose down -v
```
---
## 📚 Ressources utiles
* [Documentation WordPress](https://fr.wordpress.org/support/)
* [Image Docker officielle WordPress](https://hub.docker.com/_/wordpress)
* [Image Docker officielle MySQL](https://hub.docker.com/_/mysql)
* [Traefik avec Docker](https://doc.traefik.io/traefik/providers/docker/)
---