Manuel Docker Compact (1: Commandes de base / de base)

La raison de l'article

Docker, qui est utilisé naturellement dans le développement Cependant, les commandes utilisées sont limitées, et il y a des éléments qui devraient être traités avec le mécanisme de Docker. Cela semble être connu, mais pas.

Une fois à propos de Docker, les contenus d'apprentissage sont résumés pour chaque élément ** Manuel compact pour le travail Docker ** Je voulais le garder tel quel.

Numéro de poste Sous-titre et destination d'accès
1 Commandes élémentaires / basiques(* Cet article)
2 Montage et persistance des données
3 docker-compose
4 Créer une image personnalisée

Si vous trouvez des erreurs ou des avis, nous vous serions reconnaissants de bien vouloir les signaler. Si vous le trouvez utile, je vous serais reconnaissant de bien vouloir ** LGTM </ font> **.

Objectif de cet article

Qu'est-ce que Docker dans cet article? Des opérations de base sont résumées.

Qu'est-ce que Docker? Quels sont les avantages et les inconvénients?

Tout d'abord, pensez à ce qu'est «Docker». De toute évidence, Docker est un logiciel typique qui réalise des conteneurs. Bien qu'il existe des éléments décrits dans divers livres et matériels techniques, En un mot, de force

«Fournir un environnement d’exécution isolé qui ne s’affecte pas les uns les autres à l’aide de la technologie des conteneurs»

Je pense que cela peut être dit.

Avantages de Docker

  • L'environnement étant isolé, le développement est possible dans chaque conteneur --Facile à copier le conteneur et à l'exécuter sur un autre serveur (portabilité élevée)
  • Vous pouvez créer le même environnement (conteneur) tant que vous avez un PC avec Docker Engine installé.

Inconvénients de Docker

Il n'y en a pas beaucoup, mais nous vérifierons les inconvénients par comparaison.

  1. Fonctionne uniquement sur les systèmes Linux
  2. Pas une séparation complète. Bien qu'il dispose d'un mécanisme pour limiter le taux d'utilisation du processeur et la consommation de mémoire afin qu'il ne soit pas affecté par d'autres conteneurs. Ce n'est pas parfait et il n'est pas émulé comme un serveur virtuel, donc c'est dans Docker Engine En principe, s'il y a une faille de sécurité, il y a un risque que la partie isolée se détache.

Configuration de Docker

Docker est un représentant du logiciel qui réalise l'environnement du conteneur. Docker est un logiciel qui fonctionne sous Linux. Si vous installez Docker Engine sur Linux, vous pourrez exécuter Docker Container. Sur Mac et Windows, il peut être exécuté en installant un logiciel appelé Docker Desktop. L'installation de Docker Desktop installera et utilisera le sous-système Linux.

Conteneur Docker

Le conteneur Docker est la source du conteneur, Docker image (* Cela peut être exprimé comme une image ci-dessous). Obtenez-le à partir d'un registre tel que Docker Hub ou utilisez Dockerfile Mettez les données nécessaires dans le répertoire de travail et créez votre propre image personnalisée Il existe deux méthodes principales, l'une consiste à créer un conteneur Docker.


Résumons l'opération.

Fonctionnement de base de Docker

Flux du début à la fin du conteneur
(Exemple de création avec une image Apache à l'aide de Docker Hub)

スクリーンショット 2020-09-22 11.30.32.png

procédure

  1. docker pull httpd (obtenir une image de Docker Hub, qui est un référentiel Docker) Le contenu du site suivant.   Apache / httpd
  2. docker create (création de conteneur)
  3. docker start (démarrer le conteneur)
  4. docker stop (arrêt du conteneur)
  5. docker rm (supprimer le conteneur)
  6. image docker rm (supprimer l'image)

Il s'agit d'une série de flux, mais il est courant d'exécuter de l'acquisition d'image à l'opération à la fois avec docker run. Par conséquent, l'explication ci-dessous est basée sur l'hypothèse que docker run sera utilisé.

Options de création et de lancement de conteneurs Docker

Certaines options de démarrage sont souvent utilisées lors de la création d'un conteneur d'exécution de docker.

Nom de l'option Contenu
-d Mode de détachement. Exécution en arrière-plan séparée du terminal à conteneurs
-i Mode interactif. Connexion de conteneur d'entrée / sortie standard et sortie d'erreur standard
-t Pseudo terminal(pseudo-tty)Assigner.
Un terminal qui prend en charge le déplacement du curseur, la suppression de caractères et la saisie de caractères tels que Ctrl.
--name Donnez un nom au conteneur. S'il n'est pas spécifié, le nom du conteneur sera aléatoire.
-p Mapper les numéros de port
(Numéro de port hôte:Numéro de port du conteneur)
-v volume:Le volume fait référence aux données qui peuvent être persistantes.
Monter un volume de données de conteneur
(Répertoire hôte: répertoire du conteneur)
-rm Option pour détruire le conteneur une fois l'exécution terminée
Il est pratique de le définir comme conteneur pour le test de fonctionnement.
-dit, -it spécification et attacher / détacher

--- Si c'est le cas, il est connecté au conteneur Docker (exécute le programme dans le conteneur) --- S'il est dit, le programme de l'hôte Docker est exécuté (le conteneur s'exécute dans les coulisses) --Attach est une connexion de conteneur Docker --Detach est une connexion telle qu'un programme (shell) de l'hôte Docker et n'est pas connecté au conteneur Docker. --- Il peut être commuté pour se détacher en appuyant sur [CTRL] + [P], [CTRL] + [Q] dans l'ordre lors de la connexion.

Si aucun nom n'est donné (cela devient un nom de conteneur aléatoire et difficile à gérer)

スクリーンショット 2020-10-27 0.02.21.png

Le comportement de l'option -p

Accepte la demande du navigateur, l'hôte 8080 s'ouvre et via le conteneur 80 Vous accéderez aux paramètres publics d'Apache. スクリーンショット 2020-09-22 12.09.37.png

Le comportement de l'option -v

Je monte le répertoire actuel de l'hôte sur le conteneur. (* Je voudrais à nouveau expliquer le montage dans le manuel 2.
Ceci est une image de sauvegarde.)
Dans ce cas, il peut être spécifié comme variable d'environnement avec $ PWD. Exemple: -v" $ PWD ": / usr / local / apache2 / htdocs

スクリーンショット 2020-09-22 12.30.06.png

En d'autres termes, la commande avec l'explication ci-dessus ajoutée est la suivante.

docker run --name my-apache-app -dit -p 8080:80 -v "$PWD":/usr/local/apache2/htdocs/ httpd:2.4

Maintenance des conteneurs

Vous pouvez vous connecter au conteneur et effectuer la maintenance avec les deux types de commandes suivants.

commander État du conteneur État à la fin de la coquille Exemple de commande
docker run Arrêt Fin du conteneur docker run --name my-apache-app -it httpd:2.4 /bin/bash
docker exec Pendant le fonctionnement Restez opérationnel docker exec -it my-appache-app /bin/bash

Dans la plupart des cas, vous devez utiliser docker exec. Si vous exécutez la commande ci-dessus, vous pouvez la mettre dans bash ci-dessous.

docker exec -it my-apache-app bash
❯ docker exec -it my-apache-app bash
root@8c72c18e9169:/usr/local/apache2# ls -a
.  ..  bin  build  cgi-bin  conf  error  htdocs  icons	include  logs  modules

Cet article se termine ici. Merci pour la lecture.

Recommended Posts

Manuel Docker Compact (1: Commandes de base / de base)
commande de base docker
Manuel compact de Docker (3: docker-compose)
Commande de mémorandum docker
Manuel Docker Compact (2: Montage et persistance des données)
Résumé de la commande Docker
Mémorandum de commande Docker
Manuel Docker Compact (4: Créer une image personnalisée)
Mémo de commande Docker Machine
commande de suppression d'erreur de docker
résumé personnel de la commande docker
Aide-mémoire de la commande Docker
[Docker] Introduction de l'instruction de base de Docker
Désassemblage de la commande d'exécution Docker. .. ..