Docker 安裝 tomcat 部署 jenkins 最新版系統

                          Docker 安裝 tomcat 部署 jenkins 最新版系統

1、環境準備

虛擬機系統 Ubuntu 18.04.5

Docker 已安裝完成,查看安裝的版本信息:

ERROR: Got permission denied  ,說明 docker 需要 root 權限執行,切換到 root 權限後,查看版本信息,執行下面的指令:

# docker version

查看已經安裝的本地鏡像列表,輸入如下指令:

# docker images

可以看到已安裝了一些系統鏡像,本文是要在 docker 上安裝 tomcat 服務,然後在部署 jenkins 最新系統,下面就開始上手實操。

二、下載鏡像

還繼續使用 Ubuntu 操作系統,就下載個 Ubuntu 的鏡像,先搜索查看一下可用的版本,使用如下指令:

# docker search ubuntu

拉取官方的鏡像,使用如下指令:

# docker pull ubuntu

使用命令查看本地鏡像列表,可以看到 ubuntu 鏡像已拉到本地。

  在本地 宿主機 創建 /home/scm/tomcat 目錄,並把相關安裝包放在該目錄下,也就是 tomcat & jdk 。

容器是在鏡像的基礎上來運行的,只有容器啓動運行了,就可以登錄到容器中進行任何操作,也就可以安裝任何所需的軟件或應用程序。

使用下面的指令啓動容器:

# docker run -i -t -v /home/scm/tomcat/:/mnt/tools/ 7e0aa2 /bin/bash

執行指令相關參數說明:

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

  • -t:表示容器啓動後會進入其命令行

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

進入容器後,可以看到掛載到容器中的目錄。

執行解壓指令,解壓 tomcat & jdk 軟件包

# tar -xvf jdk-8u251-linux-x64.tar.gz

# tar -xvf apache-tomcat-8.5.66.tar.gz

把解壓目錄移動到 /usr/local/ 目錄下,

執行如下指令:

# mv jdk1.8.0_251 /usr/local/ 

# mv apache-tomcat-8.5.66 /usr/local/tomcat8.5.66

移動到指定的目錄下後,編寫個啓動腳本,當啓動容器時,運行該腳本就可以直接自動啓動 tomcat 服務了。

下面在做什麼操作,想必應該知道吧?

要編寫一個啓動腳本,必須得有上面的一步更新、安裝操作後,纔可以使用 vim 編輯器編寫腳本。

啓動腳本編寫完成後,添加執行權限 # chmod a+x run.sh  ,以上步驟全部操作完成後,即可先退出容器。

查看正在運行的容器,此時,應該看不到任何正在運行的程序,因爲剛纔已經使用 exit 命令退出了容器,此時容器處於停止狀態,如上圖所示。

記住以上 CONTAINER ID(容器 ID),隨後將通過 容器 ID,創建一個可運行的 tomcat 鏡像,執行如下指令:

# docker commit ebbe22 mytomcat:tomcat8

該容器的 ID 是 ebbe22d1edba ,自定義創建的鏡像名是 “mytomcat:tomcat8”,隨後可使用鏡像來啓動 tomcat8 容器。

三、啓動容器

可以通過 “鏡像名” 或 “鏡像 ID” 來啓動容器,與上次啓動容器不同的是,現在不再進入容器的命令行,而是直接啓動容器內部安裝好的 tomcat 服務。

執行以下指令即可:

# docker run -d -p 28080:8080 -v /home/scm/tomcat/webapps/:/usr/local/tomcat8.5.66/webapps/ --name mytomcat_1 mytomcat:tomcat8 /root/run.sh

 

執行指令相關參數說明:

  • -d:表示以 “守護模式” 執行 /root/run.sh 腳本,此時 tomcat  控制檯不會出現在輸出終端上。

  • -p:表示宿主機與容器的端口映射,此時將容器內部的默認 8080 端口映射爲宿主機的 28080 端口,這樣就向外界暴露了 28080 端口,可通過 Docker 網橋來訪問容器內部的 8080 端口了。

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

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

容器已順利啓動了,進入到 tomcat 容器內,查看 tomcat 啓動的相關進程及服務端口是否都正常。

可以看到啓動的進程及服務端口都正常

在打開瀏覽器,通過映射容易的端口,就可以訪問到容器內的 tomcat 服務了。

 

在下載個 probe.war 監控包小工具,Copy 到 tomcat 容器的 webapps 目錄下,執行下面的指令:

# docker cp probe.war b246cd1:/usr/local/tomcat8.5.66/webapps

(還有另一種方法:使用掛載方式
#掛載的意思就是在宿主機上解壓一個tomcat把這裏面的webapps目錄映射到docker內的tomcat容器中的webapps目錄,這樣直接把war包發送到宿主機的tomcat的webapps下面,docker的tomcat的webapps會共用此目錄下的文件) 我上面是使用手動的方式 Copy 操作的。

 

war 包 Copy 到 tomcat 服務後,稍等幾分鐘,war 包會自動解析開,到時候就可以訪問 probe 來監控管理 tomcat 服務了。

到此,Docker 裏安裝 tomcat 服務就順利安裝完成了。

準備好 jenkins.war 包,也可以按 probe.war  包的部署一樣,直接 Copy 進容器指定目錄下就可以了。

下面我將使用 probe 管理系統進行發佈 jenkins.war 包到 tomcat 服務器進步部署。

選擇最新的 war 包,然後點擊 Deploy 按鈕,等待幾秒後就完成了部署。

如上圖所示, Jenkins v2.277.4   最新版本已部署完成,點擊進行訪問。

可以看到 Jenkins 系統正常運行了,按提示操作完成設置。

自定義選擇設置

設置完成,就成功登錄到 Jenkins 系統了,到此,也全部完成 Docker 安裝 tomcat 部署 jenkins 最新版系統。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章