dockers

docker
commandes dockercron
crée un reseau interne pour les docker docker create network
permet de se loguer sur docker docker login
liste les docker présent sur le systeme docker ps -a
lance un docker docker run
docker run --name some-wordpress -p 8080:80 -d wordpress
lance un terminal dans un docker docker exec -it debian2 /bin/bash
affiche les informations d'un docker sudo docker inspect
sudo docker inspect --format='{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}'
permet de sauvegarder un docker docker commit 1198375ac monsite
affiche les commandes docker help





docker-compose
lance un docker avec son fichier de configurration docker-compose up
fichier de configuration utilisé par défault docker-compose.yml
exemple de fichier docker-compose.yml version: "3.3"

services:
db:
image: mysql:5.7
volumes:
- db_data:/var/lib/mysql
restart: always
environment:
MYSQL_ROOT_PASSWORD: somewordpress
MYSQL_DATABASE: wordpress
MYSQL_USER: wordpress
MYSQL_PASSWORD: wordpress

wordpress:
depends_on:
- db
image: wordpress:latest
ports:
- "8000:80"
restart: always
environment:
WORDPRESS_DB_HOST: db:3306
WORDPRESS_DB_USER: wordpress
WORDPRESS_DB_PASSWORD: wordpress

WORDPRESS_DB_NAME: wordpress
volumes:
db_data: {}

docker-compose.yml.

docker-compose up





Dockerfile
permet de lancer une suite de commande dans un docker docker-compose up
permet de crée l'image du dockerfile docker build -t test .
base pour construire l’image FROM
nom du gestionnaire de l’image MAINTAINER
exécuter une commande pendant la création du container RUN
copier un fichier de la machine hôte sur l’image ADD
définis un variable d’environnement ENV
commande a exécuter quand le container sera instancié CMD
commande par défaut à exécuter en premier ENTRYPOINT
Working Directory de CMD CMD
set UID USER
repertoire du container accessible par l’hôte VOLUME
définis les ports du container qui seront exposés EXPOSE
commandes qui seront exécutées lors de la construction d'images enfant à partir de l'image courante. ONBUILD
exemple de dockerfile FROM debian:jessie
RUN apt-get -y update
RUN apt-get -y upgrade
ENV MYSQL_PWD 1234
RUN echo "mysql-server mysql-server/root_password password $MYSQL_PWD" | debconf-set-selections
RUN echo "mysql-server mysql-server/root_password_again password $MYSQL_PWD" | debconf-set-selections
RUN apt-get install -y git mysql-server python python-pip
RUN git clone https://github.com/django/django.git
RUN pip install -e django/
#sudo docker run -it django_derniereversion /bin/bash