docker
Ceci est une ancienne révision du document !
Table des matières
Docker
Docker est un programme libre de création, gestion et déploiement de conteneurs. Vous pouvez trouver plus d'informations sur Wikipédia et sur de nombreux sites.
Installer Docker
Sur Raspberry Pi
Prérequis
Un Raspberry Pi fonctionnel avec une distribution supportant Docker, comme Ubuntu Mate ou HypriotOS. Il faut que le noyau soit récent pour bénéficier de toutes les possibilités.
Installation
Sur Ubuntu Mate, on peut l'installer via les paquets :
$ sudo apt-get install docker.io
Vérifications
On peut vérifier qu'il est bien installé et trouver les infos importantes avec les commandes suivantes :
$ sudo docker Usage: docker [OPTIONS] COMMAND [arg...] docker daemon [ --help | ... ] docker [ --help | -v | --version ] A self-sufficient runtime for containers. Options: --config=~/.docker Location of client config files -D, --debug Enable debug mode -H, --host=[] Daemon socket(s) to connect to -h, --help Print usage -l, --log-level=info Set the logging level --tls Use TLS; implied by --tlsverify --tlscacert=~/.docker/ca.pem Trust certs signed only by this CA --tlscert=~/.docker/cert.pem Path to TLS certificate file --tlskey=~/.docker/key.pem Path to TLS key file --tlsverify Use TLS and verify the remote -v, --version Print version information and quit Commands: attach Attach to a running container build Build an image from a Dockerfile commit Create a new image from a container's changes cp Copy files/folders between a container and the local filesystem create Create a new container diff Inspect changes on a container's filesystem events Get real time events from the server exec Run a command in a running container export Export a container's filesystem as a tar archive history Show the history of an image images List images import Import the contents from a tarball to create a filesystem image info Display system-wide information inspect Return low-level information on a container or image kill Kill a running container load Load an image from a tar archive or STDIN login Register or log in to a Docker registry logout Log out from a Docker registry logs Fetch the logs of a container network Manage Docker networks pause Pause all processes within a container port List port mappings or a specific mapping for the CONTAINER ps List containers pull Pull an image or a repository from a registry push Push an image or a repository to a registry rename Rename a container restart Restart a container rm Remove one or more containers rmi Remove one or more images run Run a command in a new container save Save an image(s) to a tar archive search Search the Docker Hub for images start Start one or more stopped containers stats Display a live stream of container(s) resource usage statistics stop Stop a running container tag Tag an image into a repository top Display the running processes of a container unpause Unpause all processes within a container update Update resources of one or more containers version Show the Docker version information volume Manage Docker volumes wait Block until a container stops, then print its exit code Run 'docker COMMAND --help' for more information on a command. $ sudo docker version Client: Version: 1.10.3 API version: 1.22 Go version: go1.6.1 Git commit: 20f81dd Built: Wed, 20 Apr 2016 14:19:16 -0700 OS/Arch: linux/arm Server: Version: 1.10.3 API version: 1.22 Go version: go1.6.1 Git commit: 20f81dd Built: Wed, 20 Apr 2016 14:19:16 -0700 OS/Arch: linux/arm $ sudo docker info [sudo] password for simon: Containers: 0 Running: 0 Paused: 0 Stopped: 0 Images: 0 Server Version: 1.10.3 Storage Driver: overlay Backing Filesystem: extfs Execution Driver: native-0.2 Logging Driver: json-file Plugins: Volume: local Network: bridge null host Kernel Version: 4.1.19-v7+ Operating System: Ubuntu 16.04.1 LTS OSType: linux Architecture: armv7l CPUs: 4 Total Memory: 925.8 MiB Name: rpi2 ID: K5PJ:JHJS:AEOJ:QMBV:N6GY:LEJY:L6GW:DJGT:7TCV:A247:62PI:O6H5 WARNING: No memory limit support WARNING: No swap limit support WARNING: No oom kill disable support WARNING: No cpu cfs quota support WARNING: No cpu cfs period support
Bonus
Pour ne pas devoir utiliser sudo et pour limiter la surface d'attaque de Docker, on peut utiliser cette astuce :
# On ajoute le groupe docker s'il n'existe pas déjà. $ sudo groupadd docker # On ajoute l'utilisateur courant (nous) "${USER}" au groupe. # On peut y mettre n'importe quel utilisateur # Il faudra peut-être de reconnecter pour que les modifications prennent effet. $ sudo gpasswd -a ${USER} docker # On redémarre le daemon. $ sudo service docker restart
Liens et références
docker.1470160812.txt.gz · Dernière modification : 2020/08/09 12:59 (modification externe)