doc/docker_fr.md
ma.azimi@laposte.net 2a3bd2c7dc Update docker_fr.md
2015-04-24 19:41:23 +02:00

124 lines
2.6 KiB
Markdown
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Docker et YunoHost
*Voici une petite page de documentation en guise de mémo sur la manière de tester/développer YunoHost avec Docker.*
*Toutes les autres façons d'installer YunoHost sont listées **[ici](/install_fr)**.*
<img src="https://yunohost.org/images/docker.png" width=250>
---
## Installer Docker
**Prérequis** : une machine x86 qui tourne sous Ubuntu 14.04 ou supérieur, ArchLinux ou Fedora (sur Debian c'est plus chiant)
Sous Ubuntu :
```bash
$ curl -s https://get.docker.io/ubuntu/ | sudo sh
```
Sous ArchLinux :
```bash
$ sudo pacman -Sy docker
```
Sous Fedora :
```bash
$ su -c 'yum install docker'
```
---
Passez **root** :
```bash
$ sudo -i
```
Lancer le démon docker avec une des commande ci-dessous :
```bash
service docker start
systemctl start docker
docker -d
```
---
## Installer le conteneur YunoHost
La commande suivante va télécharger limage YunoHost pré-construite :
```bash
docker pull yunohost/full
```
Vous pouvez également construire le conteneur manuellement :
```bash
docker build -t yunohost/full github.com/YunoHost/Dockerfile
```
Vous pouvez vérifier que le conteneur est bien téléchargé avec la commande `docker images`
---
## Démarrer le conteneur
```bash
docker run -d yunohost/full /sbin/init
```
Si vous souhaitez démarrer le conteneur avec tous les ports forwardé sur lhôte :
```bash
docker run -d \
-p 25:25 \
-p 53:53/udp \
-p 80:80 \
-p 443:443 \
-p 465:465 \
-p 993:993 \
-p 5222:5222 \
-p 5269:5269 \
-p 5290:5290 \
yunohost/full \
/sbin/init
```
Plus d'information sur la documentation de Docker :
* http://docs.docker.com/reference/commandline/cli/#run
* http://docs.docker.com/userguide/dockerlinks/
---
## Post-installation
Récupérez l'adresse IP du conteneur (normalement quelque chose comme 172.17.0.x)
```bash
docker inspect --format '{{ .NetworkSettings.IPAddress }}' <CONTAINER_ID>
```
Rendez-vous ensuite sur https://ip.du.conteneur et procédez à la [post-installation](/postinstall_fr)
---
## Commandes utiles
Snapshoter l'état d'un container
```bash
docker commit <ID_de_mon_conteneur> LeNomQueJeVeux
# Exemple : docker commit 3e85317430db yunohost/full:27042015
```
Assigner une IP à un container
```bash
# Vous avez besoin d'iptables, et avoir activé l'IP forwarding sur votre système
iptables -t nat -A PREROUTING -d <IP à allouer> -j DNAT --to-destination <IP conteneur docker>
iptables -t nat -A POSTROUTING -s '<IP conteneur docker>/32' -o eth0 -j SNAT --to-source <IP à allouer>
# Attention à l'interface (ici eth0)
```
Se connecter à un conteneur démarré
```bash
docker exec -t -i <ID_de_mon_conteneur> /bin/bash
```