Maison >Java >javaDidacticiel >Comment utiliser Docker pour créer un environnement Java
Que fait Docker ?
Docker est un moteur de conteneur avancé basé sur un conteneur Linux (conteneur lxc-linux). Le code source est hébergé sur github et est open source conformément à. le protocole apache2.0. L'objectif de Docker est d'implémenter une solution légère de virtualisation du système d'exploitation.
Pour apprendre Docker, vous devez d'abord comprendre quelques concepts :
Image : l'image de Docker est similaire à une image ISO système courante et contient des informations sur l'application.
Conteneur : un conteneur est équivalent à une machine virtuelle qui peut être run. L'application s'exécute dans le conteneur et Docker s'exécute sur "docker" ;
Entrepôt - L'entrepôt est un endroit où les images sont stockées. Il a un contrôle de version similaire à git et est également divisé en deux formes : entrepôt public (. public) et entrepôt privé (privé) ;
Docker prend en charge la plupart des distributions Linux. En utilisant des conteneurs Docker, vous pouvez exécuter vos propres applications sur différents systèmes d'exploitation et différentes machines. Vous n'avez pas à vous soucier de la configuration du matériel, du fonctionnement. l'environnement, etc., et la migration des applications doit être 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 démarre plus rapidement, ce qui 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 en fonction du matériel, puis à déployer les applications associées sur le système.
Cette image illustre de manière frappante la différence entre les technologies de virtualisation traditionnelles telles que docker et vm :
vs
Préparation
Vous devez d'abord préparer un système d'exploitation centos, une machine virtuelle est également disponible. Les exigences de configuration spécifiques sont les suivantes :
1. Il doit s'agir d'un système d'exploitation 64 bits
2 Il est recommandé que le noyau soit supérieur à 3.8
Installer Docker
Il vous suffit d'installer le logiciel Docker. via la commande suivante
yum -y install docker-io
Vous pouvez utiliser la commande suivante pour vérifier si Docker est installé avec succès :
docker version
Si la sortie affiche le numéro de version de Docker, cela signifie que l'installation est réussie. Vous pouvez démarrer le service Docker via le. commande suivante :
service docker start
Si la commande de service ne peut pas être démarrée, utilisez la commande suivante
systemctl start docker.service
Tout comme pour installer un logiciel, nous devons d'abord avoir un CD avec le logiciel gravé dessus si vous utilisez un. lecteur optique virtuel, vous devez préparer le fichier image et l’utiliser pour installer le logiciel. 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
Téléchargez l'image
docker search <image>
Utilisez docker pull imagename (nom du miroir) pour télécharger l'image
Téléchargez. terminé Utilisez ensuite la commande suivante pour afficher toutes les images locales :
docker images
Une fois le téléchargement terminé, vous devriez voir :
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 appelez-le un référentiel, l'image a une balise nommée "centos7", et il y a aussi un identifiant d'image nommé "25c5298b1a36" (ceci est généré aléatoirement, donc tout le monde voit qu'ils sont tous différents)
Démarrez le conteneur
Les 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]
Utilisez la commande suivante pour démarrer le conteneur :
docker run -i -t -v /root/software/:/mnt/software/ --privileged=true 2a392a47afc5
docker run
Les paramètres pertinents incluent :
-i : Indique l'exécution du conteneur en mode interactif
-t : Indique que le conteneur entrera sa ligne de commande après le démarrage
-v : Indique quel répertoire local doit être monté dans le conteneur, au 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 officiel
1 Installez jdk
Tout d'abord, décompressez. Package jdk :
tar -zxf jdk-7u71-linux-x64.tar.gz –c
S'il s'agit d'un package rpm
rpm –ivh jdk-7u71-linux-x64.tar.gz
Puis renommez le dossier
mv jdk1.7.0_71/ jdk/
Enfin configurez les variables d'environnement
vi ~/.bashrc
Ajoutez la configuration suivante à la fin du fichier :
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
Enfin, utilisez la commande source pour que les variables d'environnement prennent effet :
source ~/.bashrc source /etc/profile
1. Installez tomcat
La même chose est vraie, décompressez le fichier. Package Tomcat :
tar –zxf apache-tomcat-7.0.55.tar.gz
Ensuite, renommez le répertoire Tomcat :
mv apache-tomcat-7.0.55/ tomcat/
Écrivez un script en cours d'exécution Lors du démarrage du conteneur, 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!