Déploiement de la plateforme de virtualisation Docker

1. Introduction à la virtualisation Docker

1) Docker est un moteur de conteneur d'applications open source qui permet aux développeurs de conditionner leurs applications et packages dépendants dans un conteneur portable, puis de les publier sur n'importe quelle machine Linux populaire, qui peut également être virtualisée.
2) Docker est un moteur de conteneur d'applications open source qui permet aux développeurs de conditionner leurs applications et packages dépendants dans un conteneur portable, puis de les publier sur n'importe quelle machine Linux populaire, qui peut également être virtualisée.
Les conteneurs utilisent complètement le mécanisme du bac à sable et il n'y aura pas d'interfaces entre eux (applications similaires à l'iPhone). Il n'y a presque pas de surcharge de performance et il peut être facilement exécuté dans les machines et les centres de données. Plus important encore, ils ne dépendent d'aucun langage, cadre ou système d'inclusion.
3) L'objectif du projet Docker est de réaliser une solution de virtualisation de système d'exploitation légère. Docker est basé sur des technologies telles que les conteneurs Linux (LXC). Sur la base de LXC, Docker a encore encapsulé, de sorte que les utilisateurs n'ont pas besoin de se soucier de la gestion du conteneur, ce qui facilite l'opération. Les utilisateurs qui utilisent des conteneurs Docker sont aussi simples que d'utiliser une machine virtuelle rapide et légère.
4) Docker et la virtualisation traditionnelle par rapport aux
solutions de virtualisation traditionnelles doivent déployer Nginx, d'abord déployer le système d'exploitation, puis déployer Nginx en fonction du système d'exploitation:
Déploiement de la plateforme de virtualisation Docker
les solutions de virtualisation Docker doivent déployer Nginx, pas besoin de déployer le système d'exploitation, déployer directement Nginx basé sur le moteur Docker:
Déploiement de la plateforme de virtualisation Docker
La virtualisation du conteneur Docker est réalisée au niveau du système d'exploitation, réutilisant directement le système d'exploitation de l'hôte local, tandis que la méthode traditionnelle consiste à virtualiser son propre système sur la base du matériel, puis à déployer les applications APP associées. sur le système.

2. Concept de virtualisation Docker (souligné)

Comprendre le concept de virtualisation Docker, respectivement, miroirs, conteneurs et entrepôts.

镜像:Docker的镜像其实就是模板,跟我们常见的ISO镜像类似,是一个样板。
容器:使用镜像常见的应用或者系统,我们称之为一个容器。
仓库:仓库是存放镜像的地方,分为公开仓库(Public)和私有仓库(Private)两种形式。

3. Les avantages de la virtualisation Docker par rapport aux machines virtuelles traditionnelles

  • Démarrage rapide des opérations:
    les performances au moment de l'exécution peuvent être considérablement améliorées et les opérations de gestion (démarrage, arrêt, démarrage, redémarrage, etc.) sont toutes mesurées en secondes ou millisecondes.

  • Virtualisation légère:
    Vous aurez suffisamment de "système d'exploitation", il vous suffira d'ajouter ou de réduire l'image. Des centaines ou des milliers de conteneurs peuvent être déployés sur un serveur. Mais avec la virtualisation traditionnelle, 10 à 20 machines virtuelles ne sont pas mauvaises.

  • Open source et gratuit:
    open source, gratuit et à faible coût. Pris en charge et piloté par le noyau Linux moderne.

  • Perspectives et prise en charge du cloud: il
    devient de plus en plus populaire et les grandes entreprises grand public favorisent le développement rapide de docker, et ses performances présentent de grands avantages.

4. Avantages de l'utilisation de Docker

  • Livraison et déploiement plus rapides
    Docker peut parfaitement aider à obtenir une livraison rapide tout au long du cycle de développement. Docker permet aux développeurs de développer des applications et des services dans des conteneurs locaux. Peut être directement intégré dans le processus de développement durable.
  • Le déploiement et l'expansion efficaces des
    conteneurs Docker peuvent être exécutés sur presque toutes les plates-formes, y compris les machines physiques, les machines virtuelles, les clouds publics, les clouds privés, les ordinateurs personnels, les serveurs, etc. Cette compatibilité permet aux utilisateurs de migrer directement une application d'une plateforme à une autre.
  • Utilisation plus élevée des ressources
    Docker a une utilisation élevée des ressources système et des centaines de conteneurs Docker peuvent être exécutés sur un hôte en même temps. En plus d'exécuter l'application dans le conteneur, il ne consomme essentiellement pas de ressources système supplémentaires, ce qui rend les performances de l'application élevées et la surcharge système est aussi faible que possible.
  • Gestion plus simple. L'
    utilisation de Docker ne nécessite que des modifications à petite échelle pour remplacer un grand nombre de mises à jour précédentes. Toutes les modifications sont distribuées et mises à jour de manière incrémentielle, permettant ainsi une gestion automatisée et efficace.

5. Principe de mise en miroir Docker

L'image Docker peut prendre en charge le fonctionnement d'un conteneur Docker et fournit principalement une prise en charge des données du système de fichiers pendant le fonctionnement du conteneur Docker.
En tant que concept le plus basique de docker, l'image Docker présente les caractéristiques suivantes:

  • Couches miroir, chaque miroir est composé d'une ou plusieurs couches miroir
  • Une nouvelle image peut être obtenue en ajoutant un certain calque d'image à une certaine image (ce processus peut être réalisé en écrivant dockerfile ou basé sur le conteneur Commit)
  • Chaque couche de miroir a un identifiant de miroir unique
  • Les miroirs partagent le même calque miroir (selon l'ID) lors du stockage et de l'utilisation. Lors de l'extraction du miroir, le calque miroir existant ignorera automatiquement le téléchargement.
  • Chaque couche d'image est en lecture seule. Même si elle est démarrée en tant que conteneur, elle ne peut pas être vraiment modifiée. La modification n'affectera que le conteneur
    Déploiement de la plateforme de virtualisation Docker
    Docker de la couche de conteneur la plus élevée , qui peut être compris comme un ou plusieurs processus en cours d'exécution, et ces processus en cours d'exécution occupera la mémoire correspondante, les ressources de calcul CPU correspondantes, l'équipement de réseau virtuel correspondant et les ressources de système de fichiers correspondantes. Les ressources du système de fichiers occupées par le conteneur Docker sont fournies via le fichier de couche d'image de l'image Docker.
    Pour le fichier json de chaque image, Docker peut analyser le fichier json de l'image Docker pour savoir quel type de processus doit être exécuté sur cette image et quel type de variables d'environnement doit être configuré pour le processus. changement dynamique.

    6, installation et configuration de Docker

    Système d'exploitation: centos7
    Afficher le noyau: uname -r
    version du noyau: 3.10.0-1160.el7.x86_64
    Adresse du site Web officiel: https://docs.docker.com/engine/install/centos/

1. Désinstallez l'ancienne version de docker:

yum remove docker \
              docker-client \
              docker-client-latest \
              docker-common \
              docker-latest \
              docker-latest-logrotate \
              docker-logrotate \
              docker-engine

2. Installez le package yum-utils

yum install -y yum-utils

3. Définissez l'adresse de l'entrepôt. L'adresse
officielle de l'entrepôt n'est pas recommandée en Chine.

yum-config-manager \
--add-repo \
https://download.docker.com/linux/centos/docker-ce.repo

Adresse de l'entrepôt d'images Alibaba Cloud

yum-config-manager \
--add-repo \
http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

4. Installez la
communauté docker du moteur docker, ce est la version de la communauté ee version entreprise recommande officiellement la version ce, et la version la plus docker est installée par défaut.

yum install docker-ce docker-ce-cli containerd.io

Déploiement de la plateforme de virtualisation Docker

7. Installez une version spécifique de Docker Engine

Pour installer une version spécifique de Docker Engine, répertoriez les versions disponibles dans le référentiel, puis sélectionnez et installez:

yum list docker-ce --showduplicates | sort -r

Déploiement de la plateforme de virtualisation Docker
La liste renvoyée dépend des référentiels activés et est spécifique à votre version CentOS (.el7 est indiqué par le suffixe dans cet exemple).
Le nom du package est le nom du package (docker-ce) plus la chaîne de version (deuxième colonne), du premier deux-points (:) au premier tiret, séparés par un tiret (-). Par exemple, docker-ce-18.09.1.

 sudo yum install docker-ce-<VERSION_STRING> docker-ce-cli-<VERSION_STRING> containerd.io

5. Démarrez Docker.

systemctl start docker

6. Ajouter au démarrage depuis le début

systemctl  enable  docker

7. Vérifiez si les dockers sont démarrés

docker version

8. Vérifiez que Docker Engine est correctement installé en exécutant l'image hello-world.

docker run hello-world

9. Désinstaller Docker

1. Désinstallez les packages Docker Engine, CLI et Containerd:

yum remove docker-ce docker-ce-cli containerd.io

2. Les images, conteneurs, volumes ou fichiers de configuration personnalisés sur l'hôte ne seront pas supprimés automatiquement. Pour supprimer toutes les images, conteneurs et volumes:

sudo rm -rf /var/lib/docker
sudo rm -rf /var/lib/containerd

Tous les fichiers de configuration modifiés doivent être supprimés manuellement.

10. Commandes couramment utilisées dans Docker

docker  version                                       查看版本

docker  search centos                            搜索可用docker镜像

docker  images                                       查看当前docker所有镜像

docker  pull  centos                                 下载镜像

cat   centos.tar | docker import  -  centos6_newname   Docker导入镜像

docker  export  容器_id  > cenos6.tar          Docker导出镜像

docker  run  centos  echo "hello word"      在docker容器中运行hello world!
docker  run  centos  yum install ntpdate    在容器中安装ntpdate的程序

docker  ps -l 命令获得最后一个容器的id,docker   ps  -a查看所有的容器。

 运行docker commit 提交刚修改的容器,例如:
docker  commit  2313132  centos:v1

docker run -i -t -d centos /bin/bash 在容器里启动一个/bin/bash shell环境,可以登录进入操作,其中-t tty,表示打开一个终端的意思,-i interactive,表示可以交互输入,-d表示在后台启动,以daemon方式启动。  
docker  run  -d  centos:v1  /bin/bash 

Docker  stop  id                                关闭容器

Docker  start  id                                启动某个容器

docker  rm  id                                    删除容器,
    docker  rmi  images                      删除镜像

docker  run  -d  -p  80:80  -p 8022:22   centos:v2,解析:-p指定容器启动后docker上运行的端口映射及容器里运行的端口,80:80,第一个80表示docker系统上的80,第二个80表示docker虚拟机里面的端口。用户默认访问本机80端口,自动映射到容器里面的80端口。

docker  exec   -it  id  /bin/bash        进入容器终端

docker  exec  id ifconfig                  查看容器的IP地址;

Docker  inspect id |grep -i ipaddr    查看容器IP地址;

Docker  exec  df -h                         查看容器的磁盘分区信息;

Je suppose que tu aimes

Origine blog.51cto.com/11353391/2673224
conseillé
Classement