ajout du TP5/6

This commit is contained in:
Tom MOGULJAK 2024-03-19 23:08:54 +01:00
parent 64dc0e433d
commit cc92379958
5 changed files with 152 additions and 2 deletions

104
README.md
View File

@ -70,7 +70,7 @@ services:
- ./nginx:/etc/nginx/conf.d
```
**Étape 6** : Pour initialiser la base de données deux méthodes s'offrent à nous. La première en se connectant directement au serveur REDIS et la deuxième en utilisant l'interface REDISINSIGHT.
**Étape 7** : Pour initialiser la base de données deux méthodes s'offrent à nous. La première en se connectant directement au serveur REDIS et la deuxième en utilisant l'interface REDISINSIGHT.
- **Première solution**
- Démarrer docker avec la commande ``docker compose up -d``
- Effectuer la commande ``docker ps`` afin de lister tous conteneurs
@ -81,4 +81,104 @@ services:
"http://localhost/index.php"
- **Deuxième solution**
# TP 5/6
# TP 5/6
**Étape 1** : Il faut utiliser de nouveau ce qu'on a fait lors du TP4 afin de faire la mise en réseau.
Pour cela nous allons tout d'abord ajouter ceci :
```yml
networks:
- back
```
Sur le service REDIS, REDISINSIGHT
```yml
networks:
- front
```
Sur le service NGINX
```yml
networks:
- front
- back
```
Sur le service PHP
Et un bloc networks à la fin du fichier :
```yml
networks:
front:
back:
```
**Étape 2** : On va commencer par faire un docker compose contenant les services de cadvisor et de node exporter.
Pour la partie cadvisor on va mettre
```yml
services:
cadvisor:
image: google/cadvisor:latest
ports:
- "8080:8080"
restart: unless-stopped
volumes:
- /:/rootfs:ro
- /var/run:/var/run:rw
- /sys:/sys:ro
- /var/lib/docker/:/var/lib/docker:ro*
```
Et pour la partie node exporter
```yml
services:
node-exporter:
image: prom/node-exporter:latest
ports:
- "9100:9100"
restart: unless-stopped
```
**Étape 3** : Maintenant on va faire un docker compose pour le service de prometheus
```yml
services:
prometheus:
image: prom/prometheus:latest
restart: unless-stopped
volumes:
- ./prometheus/:/etc/prometheus/
ports:
- "9090:9090"
```
⚠️ Attention, il ne faut pas oublier de faire le fichier de configuration de prometheus (prometheus.yml) et ensuite de la mettre dans un dossier prometheus
```yml
global:
scrape_interval: 1m
evaluation_interval: 1m
scrape_configs:
- job_name: 'prometheus'
scrape_interval: 1m
static_configs:
- targets: ['localhost:9090']
- job_name: 'node'
static_configs:
- targets: ['node-exporter:9100']
- job_name: 'cadvisor'
static_configs:
- targets: ['cadvisor:8080']
```
Ce fichier de configuration va nous permettre de faire le lien entre le service prometheus et les services cadvisor et node exporter
**Étape 4** : Maintenant il ne reste plus qu'à faire le docker compose pour le service Grafana.
```yml
services:
grafana:
image: grafana/grafana:latest
ports:
- "3000:3000"
restart: unless-stopped
```
**Étape 5** :

View File

@ -0,0 +1,17 @@
services:
cadvisor:
image: google/cadvisor:latest
ports:
- 8080:8080
restart: unless-stopped
volumes:
- /:/rootfs:ro
- /var/run:/var/run:rw
- /sys:/sys:ro
- /var/lib/docker/:/var/lib/docker:ro*
node-exporter:
image: prom/node-exporter:latest
ports:
- 9100:9100
restart: unless-stopped

View File

@ -0,0 +1,6 @@
services:
grafana:
image: grafana/grafana:latest
ports:
- "3000:3000"
restart: unless-stopped

View File

@ -0,0 +1,8 @@
services:
prometheus:
image: prom/prometheus:latest
restart: unless-stopped
volumes:
- ./prometheus/:/etc/prometheus/
ports:
- 9090:9090

View File

@ -0,0 +1,19 @@
global:
scrape_interval: 1m
evaluation_interval: 1m
scrape_configs:
- job_name: 'prometheus'
scrape_interval: 1m
static_configs:
- targets: ['localhost:9090']
- job_name: 'node'
static_configs:
- targets: ['node-exporter:9100']
- job_name: 'cadvisor'
static_configs:
- targets: ['cadvisor:8080']