Table des matières

Table des matières

Présentation Docker

Principales commandes Docker

Docker Image vs Docker container

DockerFile

Exercice DockerFile

* Création d'un conteneur `riick`: ```shell docker run -d -p 8080:8080 --name riick rick-morty/nodejs ``` * On peut accéder à l'environnant de développement GraphQL a l'adresse [localhost:8080/ide](http://localhost:8080/ide)
* Si un changement est effectué dans le dockerfile, l'image doit être reconstruit pour que le prochain conteneur avec cette image ait les bonnes configurations * Changeons la configuration du port réseaux:

							...other command

							EXPOSE 9000

							ENV port=9000

							...other command
						
* Reconstruisons l'image `rick-morty/nodejs`: ```shell docker build -t rick-morty/nodejs . ```
* Nous allons détruire le conteneur riick et le reconstruire avec les nouvelles configurations. ```shell docker rm riick docker run -d -p 9000:9000 --name riick rick-morty/nodejs ``` * Nous pouvons vérifier le fonctionnement en accédant à l'ide GraphQL à l'adresse [localhost:9000/ide](http://localhost:9000/ide)

Docker image avec un volume


							FROM node:12.18.1-alpine

							LABEL Author="Antoine AMARA"

							# Global install yarn package manager and Git (git can be usefull for jest tests framework)
							RUN apk update && apk add yarn git sqlite make

							# Just a little package to easily add a free licence to a project
							RUN npm install --global generate generate-license svgo

							WORKDIR /workspace
							VOLUME /workspace/

							EXPOSE 8080

							ENV port=8080

							RUN yarn install

							CMD [ "yarn", "serve:dev" ]
						
* Construction de l'image `rick-morty/nodejs`: ```shell docker build -t rick-morty/nodejs . ```
* Maintenant nous passons le code sous la forme d'un volume partagé lors du démarrage du conteneur (et donc plus besoin de reconstruire l'image si on change de dossier et/ou de code): ```shell docker run -d -p 9000:9000 -v ./ --name riick rick-morty/nodejs ```

Cleaning the system

LazyDocker on Github

Conteneur registry

Docker-compose

Les Principales commandes de Docker Compose

Démystification

Quid de la production

Liens intéressant, les sources quoi

Merci pour votre attention !