22
0
Fork 0

Remplacement de ``` par ~~~

This commit is contained in:
Jérémy Lecour 2017-01-20 10:51:37 +01:00 committed by Jérémy Lecour
parent 3c974f9883
commit 40083f75ff
9 changed files with 86 additions and 86 deletions

View File

@ -347,7 +347,7 @@ If you want to authenticate the user from github through oauth2, you need to
register your app with github to obtain a OAuth client secret and add the register your app with github to obtain a OAuth client secret and add the
following section to your configuration file: following section to your configuration file:
``` ~~~
[Github] [Github]
oauthclientid: 01239456789abcdef012 oauthclientid: 01239456789abcdef012
oauthclientsecret: 01239456789abcdef01239456789abcdef012394 oauthclientsecret: 01239456789abcdef01239456789abcdef012394
@ -357,7 +357,7 @@ oauthaccesstokenendpoint: https://github.com/login/oauth/access_token
## Uncomment if you are checking membership against an organization and change ## Uncomment if you are checking membership against an organization and change
## gitit-testorg to this organization: ## gitit-testorg to this organization:
# github-org: gitit-testorg # github-org: gitit-testorg
``` ~~~
The github authentication uses the scope `user:email`. This way, gitit gets the The github authentication uses the scope `user:email`. This way, gitit gets the
email of the user, and the commit can be assigned to the right author if the email of the user, and the commit can be assigned to the right author if the
@ -368,10 +368,10 @@ To push your repository to gitub after each commit, you can add the file
`post-commit` with the content below in the .git/hooks directory of your `post-commit` with the content below in the .git/hooks directory of your
wikidata repository. wikidata repository.
``` ~~~
#!/bin/sh #!/bin/sh
git push origin master 2>> logit git push origin master 2>> logit
``` ~~~
Plugins Plugins
======= =======

View File

@ -75,9 +75,9 @@ Un playbook va ensuite dérouler des _actions_ qui seront organisées en _roles_
Une **action** est l'invocation d'une fonctionnalité particulière fournie par un module. Exemple, pour s'assurer de l'absence d'un fichier : Une **action** est l'invocation d'une fonctionnalité particulière fournie par un module. Exemple, pour s'assurer de l'absence d'un fichier :
``` ~~~
- file: path=/etc/cron.daily/apticron state=absent - file: path=/etc/cron.daily/apticron state=absent
``` ~~~
Les actions peuvent être listées dans la partie **tasks** du playbook et peuvent être aussi déportées dans un fichier et inclus dans le playbook. Les actions peuvent être listées dans la partie **tasks** du playbook et peuvent être aussi déportées dans un fichier et inclus dans le playbook.
@ -85,7 +85,7 @@ Les **handlers** sont des actions qui ne sont exécutées que si une autre actio
Lorsqu'on a besoin d'utiliser des fichiers ou _templates_ à copier, des variables avec des valeurs par défaut, des handlers… on peut organiser tout cela dans un **role** en respectant une structure conventionnelle : Lorsqu'on a besoin d'utiliser des fichiers ou _templates_ à copier, des variables avec des valeurs par défaut, des handlers… on peut organiser tout cela dans un **role** en respectant une structure conventionnelle :
``` ~~~
foo foo
├── defaults ├── defaults
│   └── main.yml │   └── main.yml
@ -103,7 +103,7 @@ foo
│   └── test.yml │   └── test.yml
└── vars └── vars
└── main.yml └── main.yml
``` ~~~
La partie **inventory** correspond à la description de l'inventaire des serveurs à configurer et inclus un mécanisme de configuration individuel et par groupe. Nous y revenons plus loin. La partie **inventory** correspond à la description de l'inventaire des serveurs à configurer et inclus un mécanisme de configuration individuel et par groupe. Nous y revenons plus loin.
@ -401,9 +401,9 @@ handlers:
Dans des rôles longs, il est conseillé de purger les handlers de temps en temps (en fin de groupe d'action). En effet, si un playbook est interrompu les handlers ne sont pas forcément exécutés alors que l'action qui les a déclenchés a bien eu lieu. On insère alors l'action suivante : Dans des rôles longs, il est conseillé de purger les handlers de temps en temps (en fin de groupe d'action). En effet, si un playbook est interrompu les handlers ne sont pas forcément exécutés alors que l'action qui les a déclenchés a bien eu lieu. On insère alors l'action suivante :
```{.yaml} ~~~{.yaml}
- meta: flush_handlers - meta: flush_handlers
``` ~~~
### Tags ### Tags

View File

@ -16,13 +16,13 @@ Les procédures d'installation suivantes sont destinées à Debian 8 (Jessie)
### Manuelle ### Manuelle
``` ~~~
# echo "deb http://apt.dockerproject.org/repo debian-jessie main" > /etc/apt/sources.list.d/docker.list # echo "deb http://apt.dockerproject.org/repo debian-jessie main" > /etc/apt/sources.list.d/docker.list
# apt-key adv --keyserver hkp://p80.pool.sks-keyservers.net:80 --recv-keys 58118E89F3A912897C070ADBF76221572C52609D # apt-key adv --keyserver hkp://p80.pool.sks-keyservers.net:80 --recv-keys 58118E89F3A912897C070ADBF76221572C52609D
# apt update # apt update
# apt install docker-engine # apt install docker-engine
# adduser <USER> docker # adduser <USER> docker
``` ~~~
### Ansible ### Ansible
Le rôle docker-host permet d'installer le docker-engine sur un hôte distant et Le rôle docker-host permet d'installer le docker-engine sur un hôte distant et
@ -41,9 +41,9 @@ Pour autoriser des hôtes à se connecter à l'engine, il faut leur créer une c
et un certificat. et un certificat.
Pour ce faire, il suffit de lancer le script: Pour ce faire, il suffit de lancer le script:
``` ~~~
/home/docker/tls$ ./shellpki create /home/docker/tls$ ./shellpki create
``` ~~~
Les fichiers seront créés, par défaut, dans le répertoire Les fichiers seront créés, par défaut, dans le répertoire
`/home/docker/tls/files/$CN` `/home/docker/tls/files/$CN`
@ -55,62 +55,62 @@ Un conteneur quant à lui est une instance (créée à partir d'une image)
en cours d'execution. en cours d'execution.
### Lister les conteneurs et les images: ### Lister les conteneurs et les images:
``` ~~~
$ docker ps [options] $ docker ps [options]
``` ~~~
Voici quelques options utiles pour la commande `ps` Voici quelques options utiles pour la commande `ps`
``` ~~~
-a : Lister tous les conteneurs -a : Lister tous les conteneurs
-l : Lister les conteneurs récentralise -l : Lister les conteneurs récentralise
-q : Lister uniquement les ID des conteneurs -q : Lister uniquement les ID des conteneurs
``` ~~~
### Démarrer un conteneur ### Démarrer un conteneur
``` ~~~
$ docker run [options] IMAGE [commande] $ docker run [options] IMAGE [commande]
``` ~~~
Options courantes: Options courantes:
``` ~~~
--name="nom" : Donner un nom au conteneur --name="nom" : Donner un nom au conteneur
-p port_hôte:port_conteneur : Rendre un port accessible depuis l'hôte -p port_hôte:port_conteneur : Rendre un port accessible depuis l'hôte
-d : Lancer le conteneur en mode 'détaché' -d : Lancer le conteneur en mode 'détaché'
-it : Lancer le conteneur en mode intéractif avec tty -it : Lancer le conteneur en mode intéractif avec tty
``` ~~~
Pour plus d'options, consulter `$ man docker run` Pour plus d'options, consulter `$ man docker run`
### Éteindre ou tuer un conteneur ### Éteindre ou tuer un conteneur
``` ~~~
$ docker stop|kill [options] CONTENEUR $ docker stop|kill [options] CONTENEUR
``` ~~~
CONTENEUR correspond au nom ou à l'ID du conteneur. CONTENEUR correspond au nom ou à l'ID du conteneur.
Lorsque le conteneur n'est plus en fonction, il existe toujours et peut être Lorsque le conteneur n'est plus en fonction, il existe toujours et peut être
lister à l'aide de la commande `$ docker ps -a` lister à l'aide de la commande `$ docker ps -a`
### Supprimer un conteneur ou une image ### Supprimer un conteneur ou une image
``` ~~~
$ docker rm [options] CONTENEUR $ docker rm [options] CONTENEUR
ou ou
$ docker rmi [options] IMAGE $ docker rmi [options] IMAGE
``` ~~~
### Exécuter des commandes au sein d'un conteneur en marche ### Exécuter des commandes au sein d'un conteneur en marche
``` ~~~
$ docker exec [options] CONTENEUR COMMANDE $ docker exec [options] CONTENEUR COMMANDE
``` ~~~
Options courante: Options courante:
``` ~~~
-it : Lancer la commande de manière intéractive dans un TTY. -it : Lancer la commande de manière intéractive dans un TTY.
``` ~~~
### Visionner les logs d'un conteneur ### Visionner les logs d'un conteneur
``` ~~~
$ docker logs [options] CONTENEUR $ docker logs [options] CONTENEUR
``` ~~~
Option: Option:
``` ~~~
-f : Suivre les logs en direct -f : Suivre les logs en direct
``` ~~~
### Se connecter à un conteneur en marche ### Se connecter à un conteneur en marche
S'il est nécessaire d'intéragir directement avec un process lancé dans un S'il est nécessaire d'intéragir directement avec un process lancé dans un
@ -118,9 +118,9 @@ conteneur, il faut utiliser la commande `attach`.
Dans le cas où l'on souhaite simplement visionner la sortie (logs) du conteneur, Dans le cas où l'on souhaite simplement visionner la sortie (logs) du conteneur,
il faut utiliser `logs`. il faut utiliser `logs`.
Pour lancer un terminal ou une commande supplémmentaire, utiliser `exec`. Pour lancer un terminal ou une commande supplémmentaire, utiliser `exec`.
``` ~~~
docker attach [options] CONTENEUR docker attach [options] CONTENEUR
``` ~~~
**ATTENTION!!!** **ATTENTION!!!**
@ -131,24 +131,24 @@ en cours. La commande *CTRL+P+Q* doit être utilisé ou l'on doit ajouter l'opti
### Astuces ### Astuces
Éteindre/Tuer/Supprimer tous les conteneurs: Éteindre/Tuer/Supprimer tous les conteneurs:
``` ~~~
$ docker stop|kill|rm $(docker ps -aq) $ docker stop|kill|rm $(docker ps -aq)
``` ~~~
Supprimer toutes les images: Supprimer toutes les images:
``` ~~~
$ docker rmi $(docker images -q) $ docker rmi $(docker images -q)
``` ~~~
Lancer un terminal bash dans un conteneur en marche: Lancer un terminal bash dans un conteneur en marche:
``` ~~~
$ docker exec -it CONTENEUR bash $ docker exec -it CONTENEUR bash
``` ~~~
Démarrer un conteneur avec un terminal bash: Démarrer un conteneur avec un terminal bash:
``` ~~~
$ docker run -it IMAGE bash $ docker run -it IMAGE bash
``` ~~~
### Dépannage ### Dépannage

View File

@ -9,59 +9,59 @@ Docker multi-conteneurs.
## Installation ## Installation
### Manuellement ### Manuellement
``` ~~~
$ curl -L "https://github.com/docker/compose/releases/download/1.8.1/docker-compose-$(uname -s)-$(uname -m)" > /usr/local/bin/docker-compose $ curl -L "https://github.com/docker/compose/releases/download/1.8.1/docker-compose-$(uname -s)-$(uname -m)" > /usr/local/bin/docker-compose
$ chmod +x /usr/local/bin/docker-compose $ chmod +x /usr/local/bin/docker-compose
``` ~~~
### pip: ### pip:
``` ~~~
$ pip install docker-compose $ pip install docker-compose
``` ~~~
## Utilisation de base ## Utilisation de base
### Lancer l'application ### Lancer l'application
``` ~~~
$ docker-compose up [options] $ docker-compose up [options]
``` ~~~
Options courantes: Options courantes:
``` ~~~
-d : Lancer en mode détaché -d : Lancer en mode détaché
--build : Construire les images avant de lancer les conteneurs --build : Construire les images avant de lancer les conteneurs
``` ~~~
### Fermer ou forcer la fermeture de l'application ### Fermer ou forcer la fermeture de l'application
``` ~~~
$ docker-compose down|kill [options] $ docker-compose down|kill [options]
``` ~~~
Options: Options:
``` ~~~
-v : Supprimer les volumes déclarée dans le fichier docker-compose -v : Supprimer les volumes déclarée dans le fichier docker-compose
``` ~~~
### *Scaler* un composant de l'application ### *Scaler* un composant de l'application
``` ~~~
$ docker-compose scale <appname>=<## de conteneurs> ... $ docker-compose scale <appname>=<## de conteneurs> ...
``` ~~~
### Construire ou reconstruire un les images ### Construire ou reconstruire un les images
``` ~~~
$ docker-compose build [options] $ docker-compose build [options]
``` ~~~
Options courantes: Options courantes:
``` ~~~
--force-rm : Supprimer les conteneurs intermédiaires --force-rm : Supprimer les conteneurs intermédiaires
--no-cache : Ne pas utiliser le cache lors de la construction --no-cache : Ne pas utiliser le cache lors de la construction
--pull : Toujours tenter de télécharger une version plus récente de l'image --pull : Toujours tenter de télécharger une version plus récente de l'image
``` ~~~
## Fichier de configuration ## Fichier de configuration
Le fichier qui définit l'application Docker Compose au format YAML est nommée Le fichier qui définit l'application Docker Compose au format YAML est nommée
**docker-compose.yml**. **docker-compose.yml**.
En voici un exemple: En voici un exemple:
``` ~~~
version: '2' version: '2'
services: services:
web: web:
@ -74,4 +74,4 @@ services:
- redis - redis
redis: redis:
image: redis image: redis
``` ~~~

View File

@ -6,15 +6,15 @@ Documentation officielle : <https://mmonit.com/monit/documentation/monit.html>
## Installation ## Installation
``` ~~~
# apt install monit # apt install monit
``` ~~~
## Interface CLI ## Interface CLI
Monit est utilisable en ligne de commande : Monit est utilisable en ligne de commande :
``` ~~~
start all - Start all services start all - Start all services
start name - Only start the named service start name - Only start the named service
stop all - Stop all services stop all - Stop all services
@ -31,7 +31,7 @@ summary - Print short status information for each service
quit - Kill monit daemon process quit - Kill monit daemon process
validate - Check all services and start if not running validate - Check all services and start if not running
procmatch <pattern> - Test process matching pattern procmatch <pattern> - Test process matching pattern
``` ~~~
En autorisant la commande Monit à certains utilisateurs non-administrateurs, il est possible de permettre la relance de processus lors de séquences de déploiement. En autorisant la commande Monit à certains utilisateurs non-administrateurs, il est possible de permettre la relance de processus lors de séquences de déploiement.
@ -50,7 +50,7 @@ Il peut être aussi utilisé pour déclencher des actions ou alertes en cas de c
Pour gérer la rotation des logs de Monit : Pour gérer la rotation des logs de Monit :
``` ~~~
/var/log/monit.log { /var/log/monit.log {
weekly weekly
missingok missingok
@ -65,4 +65,4 @@ Pour gérer la rotation des logs de Monit :
fi fi
endscript endscript
} }
``` ~~~

View File

@ -6,21 +6,21 @@ title: Howto New Relic
Doc officielle : <https://docs.newrelic.com/docs/servers/new-relic-servers-linux/installation-configuration/servers-installation-ubuntu-debian> Doc officielle : <https://docs.newrelic.com/docs/servers/new-relic-servers-linux/installation-configuration/servers-installation-ubuntu-debian>
``` ~~~
# echo 'deb http://apt.newrelic.com/debian/ newrelic non-free' > /etc/apt/sources.list.d/newrelic.list # echo 'deb http://apt.newrelic.com/debian/ newrelic non-free' > /etc/apt/sources.list.d/newrelic.list
# wget -O - https://download.newrelic.com/548C16BF.gpg | apt-key add - # wget -O - https://download.newrelic.com/548C16BF.gpg | apt-key add -
# apt update # apt update
# apt install newrelic-sysmond # apt install newrelic-sysmond
# nrsysmond-config --set license_key=<votre clé de licence> # nrsysmond-config --set license_key=<votre clé de licence>
# systemctl start newrelic-sysmond # systemctl start newrelic-sysmond
``` ~~~
# Installer l'agent PHP # Installer l'agent PHP
Doc officielle : <https://docs.newrelic.com/docs/agents/php-agent> Doc officielle : <https://docs.newrelic.com/docs/agents/php-agent>
``` ~~~
# echo 'deb http://apt.newrelic.com/debian/ newrelic non-free' > /etc/apt/sources.list.d/newrelic.list # echo 'deb http://apt.newrelic.com/debian/ newrelic non-free' > /etc/apt/sources.list.d/newrelic.list
# wget -O - https://download.newrelic.com/548C16BF.gpg | apt-key add - # wget -O - https://download.newrelic.com/548C16BF.gpg | apt-key add -
# apt update # apt update
@ -28,6 +28,6 @@ Doc officielle : <https://docs.newrelic.com/docs/agents/php-agent>
# newrelic-install install # newrelic-install install
# rm /etc/php5/conf.d/newrelic.ini # rm /etc/php5/conf.d/newrelic.ini
# systemctl restart <votre serveur web> # systemctl restart <votre serveur web>
``` ~~~
Debconf vous demandera la clé de license à mettre. On pourra aussi la mettre à la main dans `/etc/php5/mods-available/newrelic.ini`. Debconf vous demandera la clé de license à mettre. On pourra aussi la mettre à la main dans `/etc/php5/mods-available/newrelic.ini`.

View File

@ -25,10 +25,10 @@ TODO
Pour avoir des informations à propos de Squid : Pour avoir des informations à propos de Squid :
``` ~~~
$ squidclient -h 127.0.0.1 -p 3128 cache_object://localhost/ $ squidclient -h 127.0.0.1 -p 3128 cache_object://localhost/
$ squidclient -h 127.0.0.1 -p 3128 mgr:info $ squidclient -h 127.0.0.1 -p 3128 mgr:info
``` ~~~
### WARNING! Your cache is running out of filedescriptor ### WARNING! Your cache is running out of filedescriptor
@ -38,9 +38,9 @@ depuis Debian Lenny où l'on trouve un '''ulimit -n 65535''' dans le script d'in
### Vérification de la configuration avant un start ou un reload : ### Vérification de la configuration avant un start ou un reload :
``` ~~~
# squid3 -k parse # squid3 -k parse
``` ~~~
### Résolution DNS ### Résolution DNS

View File

@ -6,9 +6,9 @@ Documentation officielle : <http://znc.in>
## Installation ## Installation
``` ~~~
# apt install -t jessie-backports znc # apt install -t jessie-backports znc
``` ~~~
La version de ZNC fournie dans Jessie (et avant) est très ancienne et pourrait [contenir des bugs et des problèmes de sécurité](http://wiki.znc.in/Installation#Debian). N'ayant aucune dépendance externe au projet, il est acceptable de l'installer avec un paquet "backport". La version de ZNC fournie dans Jessie (et avant) est très ancienne et pourrait [contenir des bugs et des problèmes de sécurité](http://wiki.znc.in/Installation#Debian). N'ayant aucune dépendance externe au projet, il est acceptable de l'installer avec un paquet "backport".

View File

@ -8,20 +8,20 @@ Avec cette astuce, pas besoin de modifier `/etc/hosts`, ce qui est très pratiqu
En HTTP classique : En HTTP classique :
``` ~~~
$ curl http://192.0.2.1:8080/foo/bar -H 'Host: www.example.com' $ curl http://192.0.2.1:8080/foo/bar -H 'Host: www.example.com'
``` ~~~
En HTTPs (SNI) : En HTTPs (SNI) :
``` ~~~
$ curl --resolve www.example.com:443:192.0.2.1 https://www.example.com/foo/bar $ curl --resolve www.example.com:443:192.0.2.1 https://www.example.com/foo/bar
``` ~~~
## Divers ## Divers
Afficher uniquement le header : Afficher uniquement le header :
``` ~~~
$ curl -I www.example.com $ curl -I www.example.com
``` ~~~