Les Dockerfiles sont des fichiers qui permettent de construire une image Docker adaptée à nos besoins, étape par étape.
docker run: Créer et démarre une machine virtuelledocker ps -a: Liste tout les containersdocker ps: Liste les conatainers actifsdocker images: Affiche toutes les imagesdocker pull:docker composer:
ex : docker run
Pour linux
1.Mise à jour des paquets et dépôt :
sudo apt-get update
sudo apt-get -y upgrade
2.Vérification du support de l’aufs:
sudo apt-get install linux-image-extra-'uname -r'
3.Ajout du dépôt docker à apt-key pour la verification du paquet :
sudo apt-key adv --keyserver hkp://pgp.mit.edu:80 --recv-keys 58118E89F3A912897C070ADBF76221572C52609D
4.Ajout du dépôt docker au sources Apt:
echo "deb https://apt.dockerproject.org/repo ubuntu-trusty main" | sudo tee /etc/apt/sources.list.d/docker.list
5.Mise à jour des dépôt en prenant en compte les derniers ajouts :
sudo apt-get update
6.Pour finir, télechargement et installation de docker :
sudo apt-get install docker-engine
Le pare-feu par défaut d'Ubuntu (UFW: Uncomplicated Firewall) refuse tout le trafic de transfert par défaut, ce qui est nécessaire pour le docker.
Activer le transfert avec UFW:
Mise à jour de la configuration UFW avec l’éditeur de texte nano.
sudo nano /etc/default/ufw Descendez et trouvez la ligne commençant par DEFAULTFORWARDPOLICY.
Remplacer:
DEFAULT_FORWARD_POLICY="DROP" Par:
DEFAULT_FORWARD_POLICY="ACCEPT" Appuyez CTRL+X et valider avec Y pour sauvegarder et fermer.
Pour finir, redémarrez UFW:
# Attention : Un fichier Dockerfile doit contenir 1 seule instruction FROM
FROM chialab/php-dev:7.2-apache
# Métadata (informations sur l'image et le créateur de l'image)
LABEL maintainer="[email protected]"
LABEL langage = "fr"
LABEL version = "1.0"
LABEL description = ""
# On expose le port 80
EXPOSE 80
# Chemin du fichier des variables d'environnement
ENV APACHE_DOCUMENT_ROOT /var/www/public
# Lignes de commandes d'execution
RUN sed -ri -e 's!/var/www/html!${APACHE_DOCUMENT_ROOT}!g' /etc/apache2/sites-available/*.conf
RUN sed -ri -e 's!/var/www/!${APACHE_DOCUMENT_ROOT}!g' /etc/apache2/apache2.conf /etc/apache2/conf-available/*.conf
RUN apt-get update && apt-get install -y locales
RUN apt-get clean && rm -rf /var/lib/apt/lists/*
# Modification du fihier /etc/locale.gen dans le container pour définir l'encodage en UTF-8
RUN echo fr_FR.UTF-8 UTF-8 > /etc/locale.gen && locale-gen
# L'instruction WORKDIR permet de se déplacer dans l'arboresence de l'image.
# Exemple, nous nous plaçons dans le répertoire de /var/www avant de poursuivre les commandes du Dockerfile
# Attention, WORKDIR doit toujours contenir un chemin absolu.
WORKDIR /var/www
```
### Utilisation de docker :

