commande docker et notes d'opération

commande docker et notes d'opération

 
Choisissez une machine Linux ou choisissez une machine ubuntu ec2 sur le cloud aws et installez MobaXterm ou d'autres outils d'interface pour vous connecter aux machines Linux distantes sur l'ordinateur local. Exécutez ensuite la commande suivante pour vous familiariser avec docker.

1. Mettez à jour la source d'ubuntu
sudo apt-get update

2. Installez les packages nécessaires
sudo apt-get install apt-transport-https ca-certificates curl software-properties-common

3. Téléchargez ensuite
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -

4. Téléchargez ensuite
sudo add-apt-repository \
"deb [arch=amd64]" https://download.docker.com/linux/ubuntu \
$(lsb_release -cs) \
stable"

5. Ensuite, exécutez
sudo apt-get update

6. Exécutez ensuite la commande suivante pour installer docker-ce, car docker-ce est une version gratuite
sudo apt-get install docker-ce

7. Ensuite, téléchargez et démarrez une image

docker pull hello-world ou docker image pull hello-world (cette image hello-world est une image sur dockerhub)
sudo docker run hello-world

sudo groupadd docker (groupadd consiste à ajouter l'utilisateur actuel au groupe docker)

8. Installez nginx image
sudo docker image pull nginx:latest


9. Afficher les images du docker d'image téléchargées maintenant

10. Entrez dans le répertoire racine, afin que chaque commande soit exécutée sans ajouter le préfixe sudo
sudo su -

11. Utilisez conainer pour démarrer le
conteneur image docker run -itd --name web-server-nginx -p 8080:80 nginx:latest (où web-server-nginx est le nom du conteneur que vous souhaitez créer et démarrer cette fois, 8080 est le port de la machine hôte, 80 est le port du conteneur conteneur, l'accès au navigateur se fait via le port 8080 de la machine hôte, nginx:latest est l'image miroir utilisée pour démarrer ce conteneur) Après avoir exécuté la commande ci-dessus, un identifiant de conteneur sera renvoyé
, pour 9b2daf782f1313985797588784ef03d323cf7aee8186820a07d975ee8cac3154


12. Afficher tous les conteneurs
docker ps -a

13. Les trois étapes de docker
(1) utiliser dockerfile pour la construction du package
(2) utiliser l'image docker pour transférer le navire
(3) utiliser docker run pour exécuter l'image, c'est-à-dire l'exécution du conteneur

14. Les deux commandes les plus couramment utilisées du côté docker ci sont
docker run
docker pull

15. Créez un nouveau dossier + Dockerfile
Ouvrez le Dockerfile avec nano ou vm,
ajoutez du contenu
ARG CODE_VERSION=16.04
FROM ubuntu :${CODE_VERSION}
RUN apt-get update -y
CMD ["bash"]

16. Exécutez le fichier ci-dessus pour créer une image
docker build -t img_from de tous les codes du répertoire courant (img_from dans cette commande est le nom de l'image empaquetée et le point à la fin signifie tous les fichiers du répertoire courant où se trouve le dockerfile. C'est-à-dire pour regrouper tous les fichiers de ce répertoire dans l'image)

17. Renvoyez l'id de l'image dont le nom est imageName
docker run -itd --name cont_run-env imageName (exécutez l'image dont le nom est imageName, et nommez le conteneur exécutant l'image cette fois comme cont_run-env)

18. docker image分层
couche cmd couche
d'exposition couche
workdir couche
d'exécution
couche d'image de base
bootfs

19. python de recherche de menu fixe: 3.6

Vous pouvez voir toutes les informations sur python 3.6 sur dockerhub, y compris la date de sortie, etc.

20. docker search --format "table { {.Name}}\t{ {.Description}}\t{ {.IsOfficial}}" registre

Filtrer les requêtes avec --format ou filter

21. docker login
docker tag nginx:latest cerule/repo-nginx:cc-nginx (où cerule/repo-nginx est le nom du référentiel, cc-nginx est le nom de la balise) cette commande doit répertorier l'image de nginx :
latest , copiez et collez une copie et changez l'étiquette en cerule/repo-nginx:cc-nginx

22. l'image docker push cerule/repo-nginx:cc-nginx
sera étiquetée comme cerule/repo-nginx:cc-nginx image, push to github

23. Afficher l'historique ou l'historique des détails ou inspecter
l'historique des images docker cerule/repo-nginx:cc-nginx
docker image inspect --format "{ {json .Config}}" ubuntu > inspect_ubuntu.txt
docker image inspect ubuntu:latest

24. Image
docker image rm nginx:1-alphine-perl
docker image rmi 3666666(image id)

25. Créer un conteneur
docker container create -it --name cc-busya busybox:latest (où busybox:latest est le nom de l'image, cc-busya est le nom du conteneur)

Exécutez ensuite la phrase suivante : run sera exécuté en premier, puis une fois le conteneur arrêté, il sera automatiquement supprimé
docker container run -itd --rm --name cc-busyb busybox:latest

26. docker container start cc-busya
docker run = docker create + docker start
docker container stop cc-busyb
docker container restart --time 5 cc-busyboxa (redémarrer ce conteneur après 5 secondes)
docker container rename cc-busyboxa my-busybox( ne provoquera pas de redémarrage ou de resynchronisation)

docker container attach my-busybox provoquera son arrêt.
La fonction de docker container attach est d'entrer dans le conteneur pour voir, comme vérifier les journaux, effectuer certaines opérations, etc.

/ #Entrer dans
une autre fenêtre
quitter
quitter cette fenêtre

docker exec -it my-busybox pwd
pour obtenir le résultat /, qui est le répertoire racine de ce conteneur, docker ps -a, vous pouvez constater que ce conteneur est en place

27. map port port
docker container run -itd --name cont_nginx -p 8080:80/tcp img_expose
docker container run -itd --name cont_nginxa -P img_expose
la même image, démarrer deux conteneurs, le navigateur peut passer deux ports pour y accéder la même ressource

28. Supprimer le conteneur
docker container rm cont_from
docker container rm 68xxxx 087xxx 915xxx (id de conteneur arrêté)

29. docker container prune (supprimer tous les conteneurs à l'état d'arrêt)


30. Docker Network Drivers Host, Bridge, Overlay (Swarm ou Kubenetes) utilisés pour communiquer entre les conteneurs

31. docker network create --driver bridge my-bridge
返回id

réseau docker créer --driver bridge --subnet=192.168.0.0/16 --ip-range=192.168.5.0/24 mybridge1

réseau docker ls

réseau docker ls --filter driver=bridge

docker start démarre un conteneur, myubuntu
puis exécute docker network connect mybridge1 myubuntu

conteneur docker inspecter myubuntu

docker container run -itd --network host --name cont_nginx nginx:latest (où nginx:latest est le nom de l'image, cont_nginx est le nom du conteneur)

port de conteneur docker cont_nginx

réseau docker inspecter le pont

déconnecter le réseau docker mybridge myubunu

32. docker volume permanent storage
docker volume create vol-busybox
Cette commande renvoie le nom vol-busybox
docker run -d --volume vol-ubuntu:/tmp ubuntu créera également un volume, le nom du volume créé par cette commande est vol-ubuntu , enregistrez les données dans le chemin /tmp de la machine hôte, l'image de démarrage est ubuntu,
vous pouvez donc afficher tous les volumes avec docker volume ls
 
docker volume ls --filter "dangling=true"
pour filtrer les volumes qui sont non monté sur un conteneur

docker volume inspecter vol-ubuntu
pour afficher les détails de ce volume

docker volume rm vol-ubuntu
delete, s'il se trouve sur le conteneur sur mout, refuser de supprimer

docker conteneur rm dockernamess

33. Téléchargez docker compose
sudo curl -L https://github.com/docker/compose/releases/download/1.22.0/docker-compose-$(uname -s)-$(uname -m) -o /usr /local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
docker compose version Vérifier si l'installation a réussi

34. La version de configuration dans le fichier docker-compose.yaml
: 3.3
services :
  db:
      image : mysql:5.7 (le nom de l'image miroir de la base de données téléchargée)
      container_name : mysql_database (le nom du conteneur container)
      volumes :
          - db_data:/var/ lib/mysql (où db_data est le nom du volume, /var/lib/mysql est le chemin de la machine hôte) restart : always (
      lorsque le conteneur raccroche, sélectionnez toujours pour redémarrer automatiquement)
      environnement :
        MYSQL_ROOT_PASSWORD : wordxxx
        MYSQL_DATABASE : wxxx
        MYSQL_USER : usxxx
        MYSQL_PASSWORD : xxxx
  mywebxx :
      depend_on :
         - image db
      : mywebxx:latest
      container_name :
      volumes conxxx :
         - mywebxx_files:/var/www/html (où mywebxx_files est le nom du volume, /var/www/html est l'emplacement de stockage sur la machine hôte) ports : - " 8080 :80" redémarrage : toujours
      environnement
         :
      MYWEBXX_DB_HOST
      :
         db :3306
         MYWEBXX_DB_USER : userxx
         MYWEBXX_DB_PASSWORD : xxx  

  volumes :
       mywebxxx_files :
       db_data :

     

  
Lien d'origine : https://blog.csdn.net/daiqinge/article/details/103144869

Je suppose que tu aimes

Origine blog.csdn.net/zxl2016/article/details/105844430
conseillé
Classement