Maison > Java > javaDidacticiel > le corps du texte

Comment utiliser Docker pour créer un environnement Java

王林
Libérer: 2023-05-11 13:22:06
avant
3102 Les gens l'ont consulté

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 :

Comment utiliser Docker pour créer un environnement Java vsComment utiliser Docker pour créer un environnement Java

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
Copier après la connexion

Vous pouvez utiliser la commande suivante pour vérifier si Docker est installé avec succès :

docker version
Copier après la connexion

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
Copier après la connexion

Si la commande de service ne peut pas être démarrée, utilisez la commande suivante

systemctl start docker.service
Copier après la connexion

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>
Copier après la connexion

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
Copier après la connexion

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
Copier après la connexion

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]
Copier après la connexion

Utilisez la commande suivante pour démarrer le conteneur :

docker run -i -t -v /root/software/:/mnt/software/ --privileged=true 2a392a47afc5
Copier après la connexion

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
Copier après la connexion

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
Copier après la connexion

S'il s'agit d'un package rpm

rpm –ivh jdk-7u71-linux-x64.tar.gz
Copier après la connexion

Puis renommez le dossier

mv jdk1.7.0_71/ jdk/
Copier après la connexion

Enfin configurez les variables d'environnement

vi ~/.bashrc
Copier après la connexion

Ajoutez la configuration suivante à la fin du fichier :

export java_home=/opt/jdk

export path=$path:$java_home
Copier après la connexion

·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
Copier après la connexion

Enfin, utilisez la commande source pour que les variables d'environnement prennent effet :

source ~/.bashrc

source /etc/profile
Copier après la connexion

1. Installez tomcat

La même chose est vraie, décompressez le fichier. Package Tomcat :

tar –zxf apache-tomcat-7.0.55.tar.gz
Copier après la connexion

Ensuite, renommez le répertoire Tomcat :

mv apache-tomcat-7.0.55/ tomcat/
Copier après la connexion

É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
Copier après la connexion

Ensuite, modifiez le contenu du script comme suit. :

#!/bin/bash

source ~/.bashrc

sh /opt/tomcat/bin/catalina.sh run
Copier après la connexion

注意:这里必须先加载环境,然后使用tomcat的运行脚本来运行tomcat

最后,为运行脚本添加执行权限:

chmod u+x /root/run.sh
Copier après la connexion

1.安装nginx

先去官网下载源码包注意要是gz的

下载地址

下载完后,解压安装包:

tar -zxvf nginx-1.11.5.tar.gz
Copier après la connexion

然后再配置安装变量,打开解压后的目录-执行命令

cd nginx-1.11.5
Copier après la connexion

配置安装环境

./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
Copier après la connexion

在解压目录执行:

make
Copier après la connexion

切换到root用户执行安装命令

make install
Copier après la connexion

创建软链

ln –s /usr/local/servers/nginx/sbin/nginx /usr/local/bin/nginx
Copier après la connexion

启动nginx服务

nginx
Copier après la connexion

再用 ps -ef|grep nginx查看是否启动成功

提交docker镜像

首先退出你刚才配置好的docker镜像

exit
Copier après la connexion

然后使用以下命令可以看到刚才退出的docker镜像

docker ps –a
Copier après la connexion

再使用以下命令,根据某个”容器id”来创建一个新的”镜像”:

docker commit 57c312bbaad1 javaweb:0.1
Copier après la connexion

该容器id是”57c312bbaad1”,所创建的镜像名是”javaweb”

注意:”57c312bbaad1” 这个id是使用 docker ps 命令来查看的

提交了新的镜像你可以把这个镜像储存tar包

docker  –o ~/javaweb.tar javaweb
Copier après la connexion

docker save –o 保存的目录 镜像名

启动容器

先用 docker images看看当前所有的镜像

启动最新创建的镜像

docker run -d -p 80:80 --name javaweb javaweb:0.1 /root/run.sh
Copier après la connexion

-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!

Étiquettes associées:
source:yisu.com
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!