Outils pour utilisateurs

Outils du site


systeme:docker

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
systeme:docker [2016/10/31 15:43] – [Syntaxe docker-compose.yml] rootsysteme:docker [2018/02/23 21:27] (Version actuelle) root
Ligne 29: Ligne 29:
   * [[https://docs.docker.com/engine/security/https/|Chiffrement]]   * [[https://docs.docker.com/engine/security/https/|Chiffrement]]
   * [[https://docs.docker.com/engine/security/apparmor/|AppArmor]]   * [[https://docs.docker.com/engine/security/apparmor/|AppArmor]]
 +
 +Activation namespace user pour remappinf des uid entre le conteneur et la machine hôte avec : **userns-remap** :
 +  * https://resinfo.org/IMG/pdf/secu-docker.pdf
 +  * https://resourcepool.io/fr/2016/09/09/francais-le-user-namespace-dans-docker/
  
 ===== Plugins ===== ===== Plugins =====
Ligne 428: Ligne 432:
 On créer un fichier [[#dockerfile|Dockerfile]] dans le répertoire courant et on lance la construction de l'image : On créer un fichier [[#dockerfile|Dockerfile]] dans le répertoire courant et on lance la construction de l'image :
 <xtermrtf> <xtermrtf>
-$ docker build -t ouruser/sinatra:v2 .+$ docker build -t gigi206/apache2_php5:v1 . 
 +$ docker tag gigi206/apache2_php5:v1 gigi206/apache2_php5:latest 
 +$ docker push gigi206/apache2_php5:lates 
 +</xtermrtf> 
 + 
 +==== docker save ==== 
 +[[https://docs.docker.com/engine/reference/commandline/save/|Exporte une image au format tar]] : 
 +<xtermrtf> 
 +$ docker save localhost:5000/suse/sles12sp2 -o sles12sp2.tar 
 +</xtermrtf> 
 + 
 +==== docker load ==== 
 +[[https://docs.docker.com/engine/reference/commandline/load/|Importe une image au format tar]] : 
 +<xtermrtf> 
 +$ cat exampleimage.tgz | docker import - exampleimagelocal:new
 </xtermrtf> </xtermrtf>
  
Ligne 665: Ligne 683:
  
 === docker service inspect === === docker service inspect ===
-[[https://docs.docker.com/engine/reference/commandline/service_inspect/|Affiche la configuration du servive]] :+[[https://docs.docker.com/engine/reference/commandline/service_inspect/|Affiche la configuration du service]] :
 <xtermrtf> <xtermrtf>
 $ docker service inspect redis --pretty $ docker service inspect redis --pretty
Ligne 692: Ligne 710:
 <xtermrtf> <xtermrtf>
 $ docker service update --limit-cpu 2 redis $ docker service update --limit-cpu 2 redis
 +</xtermrtf>
 +
 +===== Dockerfile =====
 +  * [[https://docs.docker.com/engine/reference/builder/#/dockerignore-file|Fichier .dockerignore]]
 +
 +==== FROM ====
 +[[https://docs.docker.com/engine/reference/builder/#/from|Auteur du fichier Dockerfile]] :
 +<xtermrtf>
 +MAINTAINER <name>
 +</xtermrtf>
 +
 +==== MAINTAINER ====
 +[[https://docs.docker.com/engine/reference/builder/#/maintainer|Image utilisée pour fabriquer la nouvelle image]] :
 +<xtermrtf>
 +FROM <image>
 +FROM <image>:<tag>
 +FROM <image>@<digest>FROM <image>@<digest>
 +</xtermrtf>
 +
 +==== RUN ====
 +[[https://docs.docker.com/engine/reference/builder/#/run|Exécute des commandes pour la création de l’image]] :
 +<xtermrtf>
 +RUN <command>
 +RUN ["executable", "param1", "param2"]
 +</xtermrtf>
 +
 +==== CMD ====
 +[[https://docs.docker.com/engine/reference/builder/#/cmd|Commande lancée au démarrage du conteneur]] :
 +<xtermrtf>
 +CMD <command>
 +CMD ["executable", "param1", "param2"]
 +</xtermrtf>
 +
 +Si un [[#ENTRYPOINT]] est définit :
 +<xtermrtf>
 +CMD ["param1","param2"]
 +</xtermrtf>
 +
 +==== LABEL ====
 +[[https://docs.docker.com/engine/reference/builder/#/label|Ajoute des méta-data à une image]] :
 +<xtermrtf>
 +LABEL "com.example.vendor"="ACME Incorporated"
 +LABEL com.example.label-with-value="foo"
 +LABEL version="1.0"
 +LABEL description="This text illustrates \
 +that label-values can span multiple lines."
 +LABEL multi.label1="value1" multi.label2="value2" other="value3"
 +LABEL multi.label1="value1" \
 +      multi.label2="value2" \
 +      other="value3"
 +</xtermrtf>
 +
 +==== EXPOSE ====
 +[[https://docs.docker.com/engine/reference/builder/#/expose|Expose un port]] :
 +<xtermrtf>
 +EXPOSE <port> [<port>...]
 +</xtermrtf>
 +
 +==== ENV ====
 +[[https://docs.docker.com/engine/reference/builder/#/env|Définit des varaibles d'environnement]] :
 +<xtermrtf>
 +ENV myName John Doe
 +ENV myDog Rex The Dog
 +ENV myCat fluffy
 +ENV myName="John Doe" myDog=Rex\ The\ Dog \
 +    myCat=fluffy
 +</xtermrtf>
 +
 +==== ADD ====
 +[[https://docs.docker.com/engine/reference/builder/#/add|Ajoute des fichiers]] :
 +<xtermrtf>
 +ADD <src>... <dest>
 +ADD ["<src>",... "<dest>"
 +</xtermrtf>
 +
 +<xtermrtf>
 +ADD hom* /mydir/
 +</xtermrtf>
 +
 +<note info>
 +''ADD'' peut pour la source prendre des URLS (http/https) et des archives qu'il décompressera dans la destination. Voir aussi [[#COPY]]
 +</note>
 +
 +==== COPY ====
 +[[https://docs.docker.com/engine/reference/builder/#/copy|Ajoute des fichiers]] :
 +<xtermrtf>
 +COPY <src>... <dest>
 +COPY ["<src>",... "<dest>"
 +</xtermrtf>
 +
 +<note info>
 +A la différence de [[#ADD]], ''COPY'' ne supporte pas les URLS en source et ne décompressera pas les archives.
 +</note>
 +
 +==== ENTRYPOINT ====
 +[[https://docs.docker.com/engine/reference/builder/#/entrypoint|Permet d’exécuter la commande principale du conteneur. On peut également lui passer un script]] :
 +<xtermrtf>
 +ENTRYPOINT ["executable", "param1", "param2"]
 +ENTRYPOINT command param1 param2
 +</xtermrtf>
 +
 +<note info>
 +Si l'on définit également [[#CMD]] alors qu'un ''ENTRYPOINT'' est définit alors ce qui est déclaré dans ''CMD'' sera passé en argument à ''ENTRYPOINT''.
 +</note>
 +
 +==== VOLUME ====
 +[[https://docs.docker.com/engine/reference/builder/#/volume|Ajoute un volume]] :
 +<xtermrtf>
 +VOLUME <volume>
 +VOLUME ["<volume>"
 +</xtermrtf>
 +
 +==== USER ====
 +[[https://docs.docker.com/engine/reference/builder/#/user|Indique avec quel utilisateur doit être lancé CMD, RUN et ENTRYPOINT]] :
 +<xtermrtf>
 +USER daemon
 +</xtermrtf>
 +
 +==== WORKDIR ====
 +[[https://docs.docker.com/engine/reference/builder/#/workdir|Indique le CWD pour CMD, RUN, ENTRYPOINT, COPY et ADD]] :
 +<xtermrtf>
 +WORKDIR /path/to/workdir
 +</xtermrtf>
 +
 +==== ARG ====
 +[[https://docs.docker.com/engine/reference/builder/#/arg|Définit des variables pour les réutiliser dans le Dockerfile]] :
 +<xtermrtf>
 +FROM busybox
 +USER ${user:-some_user}
 +ARG user
 +USER $user
 +</xtermrtf>
 +
 +Variables prédéfinies :
 +  * HTTP_PROXY
 +  * http_proxy
 +  * HTTPS_PROXY
 +  * https_proxy
 +  * FTP_PROXY
 +  * ftp_proxy
 +  * NO_PROXY
 +  * no_proxy
 +
 +==== ONBUILD ====
 +[[https://docs.docker.com/engine/reference/builder/#/onbuild|Indique un trigger à l'image qui sera lancé par un autre  BUILD sur cette image]] :
 +<xtermrtf>
 +ONBUILD ADD . /app/src
 +ONBUILD RUN /usr/local/bin/python-build --dir /app/src
 +</xtermrtf>
 +
 +<note>
 +Pratique pour lancer une commande sur notre image si elle a été forkée...
 +</note>
 +==== STOPSIGNAL ====
 +[[https://docs.docker.com/engine/reference/builder/#/stopsignal|Indique le signal à envoyer au conteneur pour son arrêt]] :
 +<xtermrtf>
 +STOPSIGNAL signal
 +</xtermrtf>
 +
 +==== HEALTHCHECK ====
 +[[https://docs.docker.com/engine/reference/builder/#/healthcheck|Vérifie la santé en lançant une commande dans le conteneur]] :
 +<xtermrtf>
 +HEALTHCHECK [OPTIONS] CMD command
 +HEALTHCHECK --interval=5m --timeout=3s \
 +  CMD curl -f http://localhost/ || exit 1
 +</xtermrtf>
 +
 +OPTIONS :
 +  * --interval=DURATION (default: 30s)
 +  * --timeout=DURATION (default: 30s)
 +  * --retries=N (default: 3)
 +
 +''CMD'' peut être un script qui peut renvoyer le code de sortie ci-dessous :
 +  * 0: success - the container is healthy and ready for use
 +  * 1: unhealthy - the container is not working correctly
 +  * 2: reserved - do not use this exit code
 +
 +==== SHELL ====
 +[[https://docs.docker.com/engine/reference/builder/#/shell|Indique quel shell utiliser]] :
 +<xtermrtf>
 +SHELL ["executable", "parameters"]
 +SHELL ["/bin/sh", "-c"]
 </xtermrtf> </xtermrtf>
  
systeme/docker.1477928601.txt.gz · Dernière modification : 2016/10/31 15:43 de root