diff --git a/Gitit User’s Guide.md b/Gitit User’s Guide.md index 14b14dc1..beae105d 100644 --- a/Gitit User’s Guide.md +++ b/Gitit User’s Guide.md @@ -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 following section to your configuration file: -``` +~~~ [Github] oauthclientid: 01239456789abcdef012 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 ## gitit-testorg to this organization: # github-org: gitit-testorg -``` +~~~ 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 @@ -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 wikidata repository. -``` +~~~ #!/bin/sh git push origin master 2>> logit -``` +~~~ Plugins ======= diff --git a/HowtoAnsible.md b/HowtoAnsible.md index abcaebd4..9fb75127 100644 --- a/HowtoAnsible.md +++ b/HowtoAnsible.md @@ -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 : -``` +~~~ - 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. @@ -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 : -``` +~~~ foo ├── defaults │   └── main.yml @@ -103,7 +103,7 @@ foo │   └── test.yml └── vars └── 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. @@ -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 : -```{.yaml} +~~~{.yaml} - meta: flush_handlers -``` +~~~ ### Tags diff --git a/HowtoDocker.md b/HowtoDocker.md index 123a1951..7a76ee23 100644 --- a/HowtoDocker.md +++ b/HowtoDocker.md @@ -16,13 +16,13 @@ Les procédures d'installation suivantes sont destinées à Debian 8 (Jessie) ### Manuelle -``` +~~~ # 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 update # apt install docker-engine # adduser docker -``` +~~~ ### Ansible 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. Pour ce faire, il suffit de lancer le script: -``` +~~~ /home/docker/tls$ ./shellpki create -``` +~~~ Les fichiers seront créés, par défaut, dans le répertoire `/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. ### Lister les conteneurs et les images: -``` +~~~ $ docker ps [options] -``` +~~~ Voici quelques options utiles pour la commande `ps` -``` +~~~ -a : Lister tous les conteneurs -l : Lister les conteneurs récentralise -q : Lister uniquement les ID des conteneurs -``` +~~~ ### Démarrer un conteneur -``` +~~~ $ docker run [options] IMAGE [commande] -``` +~~~ Options courantes: -``` +~~~ --name="nom" : Donner un nom au conteneur -p port_hôte:port_conteneur : Rendre un port accessible depuis l'hôte -d : Lancer le conteneur en mode 'détaché' -it : Lancer le conteneur en mode intéractif avec tty -``` +~~~ Pour plus d'options, consulter `$ man docker run` ### Éteindre ou tuer un conteneur -``` +~~~ $ docker stop|kill [options] CONTENEUR -``` +~~~ CONTENEUR correspond au nom ou à l'ID du conteneur. Lorsque le conteneur n'est plus en fonction, il existe toujours et peut être lister à l'aide de la commande `$ docker ps -a` ### Supprimer un conteneur ou une image -``` +~~~ $ docker rm [options] CONTENEUR ou $ docker rmi [options] IMAGE -``` +~~~ ### Exécuter des commandes au sein d'un conteneur en marche -``` +~~~ $ docker exec [options] CONTENEUR COMMANDE -``` +~~~ Options courante: -``` +~~~ -it : Lancer la commande de manière intéractive dans un TTY. -``` +~~~ ### Visionner les logs d'un conteneur -``` +~~~ $ docker logs [options] CONTENEUR -``` +~~~ Option: -``` +~~~ -f : Suivre les logs en direct -``` +~~~ ### Se connecter à un conteneur en marche 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, il faut utiliser `logs`. Pour lancer un terminal ou une commande supplémmentaire, utiliser `exec`. -``` +~~~ docker attach [options] CONTENEUR -``` +~~~ **ATTENTION!!!** @@ -131,24 +131,24 @@ en cours. La commande *CTRL+P+Q* doit être utilisé ou l'on doit ajouter l'opti ### Astuces Éteindre/Tuer/Supprimer tous les conteneurs: -``` +~~~ $ docker stop|kill|rm $(docker ps -aq) -``` +~~~ Supprimer toutes les images: -``` +~~~ $ docker rmi $(docker images -q) -``` +~~~ Lancer un terminal bash dans un conteneur en marche: -``` +~~~ $ docker exec -it CONTENEUR bash -``` +~~~ Démarrer un conteneur avec un terminal bash: -``` +~~~ $ docker run -it IMAGE bash -``` +~~~ ### Dépannage diff --git a/HowtoDockerCompose.md b/HowtoDockerCompose.md index 0f49949f..d7b2ec7f 100644 --- a/HowtoDockerCompose.md +++ b/HowtoDockerCompose.md @@ -9,59 +9,59 @@ Docker multi-conteneurs. ## Installation ### Manuellement -``` +~~~ $ 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 -``` +~~~ ### pip: -``` +~~~ $ pip install docker-compose -``` +~~~ ## Utilisation de base ### Lancer l'application -``` +~~~ $ docker-compose up [options] -``` +~~~ Options courantes: -``` +~~~ -d : Lancer en mode détaché --build : Construire les images avant de lancer les conteneurs -``` +~~~ ### Fermer ou forcer la fermeture de l'application -``` +~~~ $ docker-compose down|kill [options] -``` +~~~ Options: -``` +~~~ -v : Supprimer les volumes déclarée dans le fichier docker-compose -``` +~~~ ### *Scaler* un composant de l'application -``` +~~~ $ docker-compose scale =<## de conteneurs> ... -``` +~~~ ### Construire ou reconstruire un les images -``` +~~~ $ docker-compose build [options] -``` +~~~ Options courantes: -``` +~~~ --force-rm : Supprimer les conteneurs intermédiaires --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 -``` +~~~ ## Fichier de configuration Le fichier qui définit l'application Docker Compose au format YAML est nommée **docker-compose.yml**. En voici un exemple: -``` +~~~ version: '2' services: web: @@ -74,4 +74,4 @@ services: - redis redis: image: redis -``` +~~~ diff --git a/HowtoMonit.md b/HowtoMonit.md index 6c7c50dc..43963cc8 100644 --- a/HowtoMonit.md +++ b/HowtoMonit.md @@ -6,15 +6,15 @@ Documentation officielle : ## Installation -``` +~~~ # apt install monit -``` +~~~ ## Interface CLI Monit est utilisable en ligne de commande : -``` +~~~ start all - Start all services start name - Only start the named service stop all - Stop all services @@ -31,7 +31,7 @@ summary - Print short status information for each service quit - Kill monit daemon process validate - Check all services and start if not running procmatch - 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. @@ -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 : -``` +~~~ /var/log/monit.log { weekly missingok @@ -65,4 +65,4 @@ Pour gérer la rotation des logs de Monit : fi endscript } -``` +~~~ diff --git a/HowtoNewRelic.md b/HowtoNewRelic.md index 6e3c936e..78def1e5 100644 --- a/HowtoNewRelic.md +++ b/HowtoNewRelic.md @@ -6,21 +6,21 @@ title: Howto New Relic Doc officielle : -``` +~~~ # 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 - # apt update # apt install newrelic-sysmond # nrsysmond-config --set license_key= # systemctl start newrelic-sysmond -``` +~~~ # Installer l'agent PHP Doc officielle : -``` +~~~ # 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 - # apt update @@ -28,6 +28,6 @@ Doc officielle : # newrelic-install install # rm /etc/php5/conf.d/newrelic.ini # systemctl restart -``` +~~~ Debconf vous demandera la clé de license à mettre. On pourra aussi la mettre à la main dans `/etc/php5/mods-available/newrelic.ini`. \ No newline at end of file diff --git a/HowtoSquid.md b/HowtoSquid.md index 72d09344..0c9dbc7c 100644 --- a/HowtoSquid.md +++ b/HowtoSquid.md @@ -25,10 +25,10 @@ TODO 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 mgr:info -``` +~~~ ### 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 : -``` +~~~ # squid3 -k parse -``` +~~~ ### Résolution DNS diff --git a/HowtoZNC.md b/HowtoZNC.md index 73d8a79b..e9461a7e 100644 --- a/HowtoZNC.md +++ b/HowtoZNC.md @@ -6,9 +6,9 @@ Documentation officielle : ## Installation -``` +~~~ # 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". diff --git a/TipsCurl.md b/TipsCurl.md index a6591bfd..a448b87c 100644 --- a/TipsCurl.md +++ b/TipsCurl.md @@ -8,20 +8,20 @@ Avec cette astuce, pas besoin de modifier `/etc/hosts`, ce qui est très pratiqu En HTTP classique : -``` +~~~ $ curl http://192.0.2.1:8080/foo/bar -H 'Host: www.example.com' -``` +~~~ En HTTPs (SNI) : -``` +~~~ $ curl --resolve www.example.com:443:192.0.2.1 https://www.example.com/foo/bar -``` +~~~ ## Divers Afficher uniquement le header : -``` +~~~ $ curl -I www.example.com -``` \ No newline at end of file +~~~ \ No newline at end of file