欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Docker 搭建 Tomcat 運行環(huán)境的方法

 更新時間:2016年10月08日 16:59:33   作者:iTech  
這篇文章主要介紹了Docker 搭建 Tomcat 運行環(huán)境的方法,Docker與虛擬機及搭建過程,介紹的非常詳細,需要的朋友可以參考下

Docker 是一個開源的應(yīng)用容器引擎,讓開發(fā)者可以打包他們的應(yīng)用以及依賴包到一個可移植的容器中,然后發(fā)布到任何流行的 Linux 機器上,也可以實現(xiàn)虛擬化。容器是完全使用沙箱機制,相互之間不會有任何接口。

1 Docker與虛擬機

 

2 搭建過程

2.1 準備宿主系統(tǒng)

準備一個 CentOS 7操作系統(tǒng),具體要求如下:

必須是 64 位操作系統(tǒng)

建議內(nèi)核在 3.8 以上

通過以下命令查看您的 CentOS 內(nèi)核:

# uname -r

2.2 安裝Docker

# yum install docker

可使用以下命令,查看 Docker 是否安裝成功:

# docker version

若輸出了 Docker 的版本號,則說明安裝成功了,可通過以下命令啟動 Docker 服務(wù):

# systemctl start docker.service

一旦 Docker 服務(wù)啟動完畢,就可以開始使用 Docker 了。

2.3 下載鏡像

以 CentOS 為例,下載一個 CentOS 的鏡像:

# docker pull centos:7.2.1511

下載完成后,使用命令查看本地鏡像列表:

# docker images
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
docker.io/centos 7.2.1511 83ee614b834e 9 weeks ago 194.6 MB

2.4 啟動容器

容器是在鏡像的基礎(chǔ)上來運行的,一旦容器啟動了,我們就可以登錄到容器中,安裝自己所需的軟件或應(yīng)用程序。

使用以下命令即可啟動容器:

# docker run -i -t -v /root/software/:/mnt/software/ 83ee /bin/bash

命令包含以下三個部分:

docker run <相關(guān)參數(shù)> <鏡像 ID> <初始命令>

其中,相關(guān)參數(shù)包括:

-i:表示以“交互模式”運行容器

-t:表示容器啟動后會進入其命令行

-v:表示需要將本地哪個目錄掛載到容器中,格式:-v <宿主機目錄>:<容器目錄>

本例中,所有安裝程序都放在了宿主機的/root/software/目錄下,現(xiàn)在需要將其掛載到容器的/mnt/software/目錄下。

# pwd
/root/software
# ls
apache-tomcat-7.0.67.tar.gz jdk1.7.0_79.tar.gz

初始命令表示一旦容器啟動,需要運行的命令,此時使用“/bin/bash”,表示啟動后直接進入bash shell。

2.5 安裝軟件

為了搭建 Java Web 運行環(huán)境,需要安裝 JDK 與 Tomcat,下面的過程均在容器內(nèi)部進行。本例中,選擇/opt/目錄作為安裝目錄,首先需要通過cd /opt/命令進入該目錄。

2.5.1 安裝JDK

首先,解壓 JDK 程序包:

# tar -zxf /mnt/software/jdk1.7.0_79.tar.gz -C .

然后,移動 JDK 目錄:

# mv jdk1.7.0_79/ /opt/jdk/

2.5.2 安裝Tomcat

首先,解壓Tomcat程序包:

# tar -zxf /mnt/software/apache-tomcat-7.0.67.tar.gz -C .

然后,移動Tomcat目錄:

# mv apache-tomcat-7.0.67/ /opt/tomcat/

2.5.3 編寫運行腳本

編寫一個運行腳本,當啟動容器時,運行該腳本,啟動 Tomcat。

首先,創(chuàng)建運行腳本:

# touch /root/run.sh
# vi /root/run.sh

然后,編輯腳本內(nèi)容如下:

#!/bin/bash
export JAVA_HOME=/opt/jdk/
export PATH=$JAVA_HOME/bin:$PATH
sh /opt/tomcat/bin/catalina.sh run

最后,為運行腳本添加執(zhí)行權(quán)限:

# chmod u+x /root/run.sh

2.6 退出容器

當以上步驟全部完成后,可使用exit命令,退出容器。

隨后,可使用如下命令查看正在運行的容器:

# docker ps

此時,應(yīng)該看不到任何正在運行的程序,因為剛才已經(jīng)使用exit命令退出的容器,此時容器處于停止狀態(tài),可使用如下命令查看所有容器:

# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS 
02bebc3f546a 83ee "/bin/bash" 12 minutes ago Exited (0) 7 seconds ago

記住以上CONTAINER ID(容器 ID),隨后將通過該容器,創(chuàng)建一個可運行 Tomcat 鏡像。

2.7 創(chuàng)建Tomcat鏡像

使用以下命令,根據(jù)某個“容器 ID”來創(chuàng)建一個新的“鏡像”:

# docker commit 02be mytomcat:1.0
65c88ec597e04812ec3b06b7749578bebcae3aa3d735b565ed25db6818d9d7f3
# docker images
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
mytomcat 1.0 65c88ec597e0 About a minute ago 514.4 MB
docker.io/centos 7.2.1511 83ee614b834e 9 weeks ago 194.6 MB

該容器的ID是02be,所創(chuàng)建的鏡像名是“mytomcat:1.0”,隨后可使用鏡像來啟動Tomcat容器。

2.8 啟動Tomcat容器

首先,新建/root/webapps/ROOT目錄,并在該目錄下創(chuàng)建一個index.html文件,文件內(nèi)容如下:

<html>
<body>
<h2>Hello World!</h2>
</body>
</html>

正如上面所描述的那樣,可以通過“鏡像名”或“鏡像 ID”來啟動容器,與上次啟動容器不同的是,現(xiàn)在不再進入容器的命令行,而是直接啟動容器內(nèi)部的 Tomcat 服務(wù)。此時,需要使用以下命令:

# docker run -d -p 58080:8080 -v /root/webapps/:/opt/tomcat/webapps/ --name mytomcat_1 mytomcat:1.0 /root/run.sh

其中,相關(guān)參數(shù)包括:

-d:表示以“守護模式”執(zhí)行/root/run.sh腳本,此時 Tomcat 控制臺不會出現(xiàn)在輸出終端上。

-p:表示宿主機與容器的端口映射,此時將容器內(nèi)部的 8080 端口映射為宿主機的 58080 端口,這樣就向外界暴露了 58080 端口,可通過 Docker 網(wǎng)橋來訪問容器內(nèi)部的 8080 端口了。

-v:表示需要將本地哪個目錄掛載到容器中,格式:-v <宿主機目錄>:<容器目錄>

--name:表示容器名稱,用一個有意義的名稱命名即可。

在瀏覽器中,輸入宿主IP和端口號,即可訪問 Tomcat:

2.9 最終示意圖:

2.10 停止Tomcat容器

# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS 
f23598b6544d mytomcat:1.0 "/root/run.sh" 6 minutes ago Up 6 minutes 
# docker stop f235

2.11 移除容器

# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS 
f23598b6544d mytomcat:1.0 "/root/run.sh" 8 minutes ago Exited (137)
# docker rm f235
f235
# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS

2.12 移除鏡像

# docker images
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
mytomcat 1.0 65c88ec597e0 31 minutes ago 514.4 MB
docker.io/centos 7.2.1511 83ee614b834e 9 weeks ago 194.6 MB
# docker rmi 65c8
Untagged: mytomcat:1.0
Deleted: 65c88ec597e04812ec3b06b7749578bebcae3aa3d735b565ed25db6818d9d7f3
# docker images
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
docker.io/centos 7.2.1511 83ee614b834e 9 weeks ago 194.6 MB

以上所述是小編給大家介紹的Docker 搭建 Tomcat 運行環(huán)境的方法,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!

相關(guān)文章

  • 從進程中去理解?Docker隔離技術(shù)

    從進程中去理解?Docker隔離技術(shù)

    這篇文章主要介紹了從進程中去理解?Docker隔離技術(shù),Docker?公司發(fā)布的?Docker?項目具有里程碑式的意義;Docker?項目通過“容器鏡像”,解決了應(yīng)用打包這個根本性難題,下文更多相關(guān)資料,需要的朋友可以參考一下
    2022-04-04
  • docker圖形化工具portainer詳解

    docker圖形化工具portainer詳解

    這篇文章主要介紹了docker圖形化工具portainer的相關(guān)知識,本文給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借價值,需要的朋友可以參考下
    2024-01-01
  • docker部署蝸牛影院系統(tǒng)詳細流程分析

    docker部署蝸牛影院系統(tǒng)詳細流程分析

    這篇文章給大家介紹docker部署蝸牛影院系統(tǒng),在部署項目時系統(tǒng)硬件配置是CPU2核以上,內(nèi)存8G,詳細給大家介紹了安裝流程,對docker部署蝸牛電影院系統(tǒng)感興趣的朋友跟隨小編一起看看吧
    2021-05-05
  • docker開通2375端口防漏洞問題

    docker開通2375端口防漏洞問題

    這篇文章主要介紹了docker開通2375端口防漏洞問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-08-08
  • cgroup?blkio子系統(tǒng)對容器的讀寫限速詳解

    cgroup?blkio子系統(tǒng)對容器的讀寫限速詳解

    這篇文章主要為大家介紹了cgroup?blkio子系統(tǒng)對容器的讀寫限速詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-08-08
  • Docker中如何刪除image(鏡像)的方法

    Docker中如何刪除image(鏡像)的方法

    這篇文章主要介紹了Docker中如何刪除image(鏡像)的方法,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-09-09
  • Dockerfile的CMD指令用法

    Dockerfile的CMD指令用法

    這篇文章主要介紹了Dockerfile的CMD指令用法,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-03-03
  • .NET?6?從0到1使用Docker部署至Linux環(huán)境超詳細教程

    .NET?6?從0到1使用Docker部署至Linux環(huán)境超詳細教程

    這篇文章主要介紹了.NET?6?從0到1使用Docker部署至Linux環(huán)境,本文通過圖文并茂的形式給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-05-05
  • docker通過Dockerfile修改鏡像中tomcat的端口

    docker通過Dockerfile修改鏡像中tomcat的端口

    8080端口會經(jīng)常出現(xiàn)被占用的情況,本文主要介紹了docker通過Dockerfile修改鏡像中tomcat的端口,具有一定的參考價值,感興趣的可以了解一下
    2023-10-10
  • Docker使用Calico網(wǎng)絡(luò)模式配置及問題處理方法

    Docker使用Calico網(wǎng)絡(luò)模式配置及問題處理方法

    這篇文章主要介紹了Docker使用Calico網(wǎng)絡(luò)模式配置及問題處理,設(shè)計思想是Calico不使用隧道或者NAT來實現(xiàn)轉(zhuǎn)發(fā),而是巧妙的把所有二三層流量轉(zhuǎn)換成三層流量,并通過host上路由配置完成跨host轉(zhuǎn)發(fā),需要的朋友可以參考下
    2022-11-11

最新評論