Qu'est-ce que docker ? Le code source est hébergé sur GitHub et est open source sous le protocole Apache2.0. L'objectif de Docker est d'implémenter une solution légère de virtualisation du système d'exploitation.
Image—L'image de Docker est similaire à une image ISO système courante et comprend informations sur les applications ; Container - Le conteneur est équivalent à une machine virtuelle qui peut être exécutée dans le conteneur, et docker s'exécute sur "docker" ; - Entrepôt C'est un endroit pour stocker des images. Il a un contrôle de version similaire à git. Il est également divisé en deux formes : entrepôt public (public) et entrepôt privé (privé)
docker prend en charge la plupart des Linux ; distributions, en utilisant Avec les conteneurs Docker, vous pouvez exécuter vos propres applications sur différents systèmes d'exploitation et différentes machines sans avoir à vous soucier des configurations telles que le matériel et les environnements d'exploitation. La migration des applications devient très simple.
Comparaison entre Docker et la technologie de virtualisation traditionnelle Par rapport à la technologie de machine virtuelle traditionnelle, Docker consomme moins de ressources et est plus rapide à mettre en œuvre démarrage. Il est rapide et facilite grandement le déploiement, l’exploitation et la maintenance du projet.
Docker implémente la virtualisation au niveau du système d'exploitation et réutilise le système d'exploitation de l'hôte local. La méthode traditionnelle consiste à virtualiser plusieurs systèmes d'exploitation sur la base du matériel, puis à les exécuter sur. le système Déployer les applications associées sur.
# 🎜🎜#Préparation
Vous devez d'abord préparer un système d'exploitation centos, une machine virtuelle peut également être utilisée. Les exigences de configuration spécifiques sont les suivantes :
1 Doit être un système d'exploitation 64 bits 2 Il est recommandé que le noyau soit supérieur à 3.8 #. 🎜🎜#
Installer Dockeryum -y install docker-io
docker version
service docker start
systemctl start docker.service
Tout comme pour l'installation d'un logiciel, nous devons d'abord avoir un CD sur lequel le logiciel est gravé. Si vous utilisez un lecteur optique virtuel, vous devez alors préparer le fichier image et installer le logiciel via celui-ci. Dans le monde de Docker, il existe également des fichiers image. Le système d'exploitation dont nous avons besoin a été installé. Nous l'appelons généralement docker image
docker search <image>
Une fois le téléchargement terminé, utilisez la commande suivante pour afficher toutes les images locales : docker images
repository tag image id created virtual size docker.io/centos centos7 f753707788c5 12 days ago 127.1 mb
Si vous voyez le résultat ci-dessus, cela signifie que vous pouvez utiliser l'image "docker.cn/docker/centos", ou l'appeler un référentiel. L'image a un fichier nommé. Balise "centos7", et il y a aussi un identifiant d'image nommé "25c5298b1a36" (il est généré aléatoirement, donc tout le monde le voit différemment)
Start ContainersLes conteneurs fonctionnent sur la base d'images. Une fois le conteneur démarré, nous pouvons nous connecter au conteneur et installer les logiciels ou les applications dont nous avons besoin.
Utilisez pour accéder au docker déjà en cours d'exécution
docker attach dabfb413d8cf[容器id]
docker run -i -t -v /root/software/:/mnt/software/ --privileged=true 2a392a47afc5
docker run < Paramètres associés > #-t : indique que le conteneur entrera sa ligne de commande après son démarrage -v : indique quel répertoire local doit être monté dans le conteneur, format -v
Supposons que tous nos programmes d'installation sont placés dans le répertoire /root/software/ de l'hôte et qu'ils doivent maintenant être montés dans le répertoire /mnt/software/ du conteneur.
Une fois tout cela fait, vous pouvez installer le logiciel pour ce conteneur.
commande de transfert de fichiers docker
docker cp more.log e7de404c00bd:/tmp/ 1f8787b81bcd
Installer l'environnement de développement Java
Nous devons installer jdk1.7, , tomcat7, nginx, téléchargez simplement le package d'installation depuis le site officiel1 Installez jdk
Tout d'abord, décompressez le package jdk :
tar -zxf jdk-7u71-linux-x64.tar.gz –c
rpm –ivh jdk-7u71-linux-x64.tar.gz
mv jdk1.7.0_71/ jdk/
vi ~/.bashrc
export java_home=/opt/jdk export path=$path:$java_home
·Ouvrez /etc/profile avec un éditeur de texte
·Ajoutez à la fin du fichier de profil : #🎜🎜 #export java_home=/usr/share/jdk1.6.0_14 export path=$java_home/bin:$path export classpath=.:$java_home/lib/dt.jar:$java_home/lib/tools.jar
source ~/.bashrc source /etc/profile
1 Installez tomcat
La même chose est vraie, décompressez le package Tomcat :
tar –zxf apache-tomcat-7.0.55.tar.gz
puis redémarrez. Nommez le répertoire Tomcat :
mv apache-tomcat-7.0.55/ tomcat/
Écrivez un script en cours d'exécution. Lorsque le conteneur est démarré, exécutez le script pour démarrer Tomcat. le processus spécifique est le suivant :
vi /root/run.sh
Ensuite, modifiez le contenu du script comme suit :
#!/bin/bash source ~/.bashrc sh /opt/tomcat/bin/catalina.sh run
注意:这里必须先加载环境,然后使用tomcat的运行脚本来运行tomcat
最后,为运行脚本添加执行权限:
chmod u+x /root/run.sh
1.安装nginx
先去官网下载源码包注意要是gz的
下载地址
下载完后,解压安装包:
tar -zxvf nginx-1.11.5.tar.gz
然后再配置安装变量,打开解压后的目录-执行命令
cd nginx-1.11.5
配置安装环境
./configure --prefix=/usr/local/servers/nginx “/usr/local/servers/nginx”是安装路径
有可能会出现./configure: error: c compiler cc is not found
这时需要运行命令更新一下gcc
yum install gcc gcc-c++ ncurses-devel perl yum -y install pcre-devel yum -y install zlib-devel yum -y install autoconf libtool make
在解压目录执行:
make
切换到root用户执行安装命令
make install
创建软链
ln –s /usr/local/servers/nginx/sbin/nginx /usr/local/bin/nginx
启动nginx服务
nginx
再用 ps -ef|grep nginx查看是否启动成功
提交docker镜像
首先退出你刚才配置好的docker镜像
exit
然后使用以下命令可以看到刚才退出的docker镜像
docker ps –a
再使用以下命令,根据某个”容器id”来创建一个新的”镜像”:
docker commit 57c312bbaad1 javaweb:0.1
该容器id是”57c312bbaad1”,所创建的镜像名是”javaweb”
注意:”57c312bbaad1” 这个id是使用 docker ps 命令来查看的
提交了新的镜像你可以把这个镜像储存tar包
docker –o ~/javaweb.tar javaweb
docker save –o 保存的目录 镜像名
启动容器
先用 docker images看看当前所有的镜像
启动最新创建的镜像
docker run -d -p 80:80 --name javaweb javaweb:0.1 /root/run.sh
-d:表示以”守护模式”执行/root/run.sh脚本,此时tomcat控制台不会出现在输出终端上。
-p:表示宿主机与容器的端口映射,此时将容器内部的80端口映射为宿主机的 80端口,这样就向外界暴露了80端口,可通过docker网桥来访问容器内部的80端口了
--name:表示容器名称,用一个有意义的名称命名即可
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!