基於tomcat基礎鏡像構建各類業務鏡像 範例如APP2業務2

一、拷貝dockerfile鏡像製做文件以及所需文件

製做第二個 tomcat 服務鏡像。作的二個業務鏡像的時候就不用這麼複雜了,而是直接將tomcat-app1的目錄拷貝到tomcat-app2便可,由於他們所需的文件都差很少java

#回到父目錄也就是tomcat目錄下
[12:36:24 root@docker tomcat-app1]#cd ..
​
#而後將app1 中的全部內容拷貝到tomcat-app2下
[12:36:29 root@docker tomcat]#cp -r tomcat-app1/* tomcat-app2/

二、修改app2 的web頁面

進入tomcat-app2目錄下只需修改index.jsp 便可,由於app2這個業務也是基於 tomcat-basev9.0.37 的基礎鏡像來製做。和app1的製做過程同樣

#進入app2業務目錄
[12:40:59 root@docker tomcat]#cd tomcat-app2/
​
#編寫web顯示頁面
[13:07:12 root@docker tomcat-app2]#vim WEBserver/index.jsp 
​
app2 tomcat-app2 APP2 22222

三、打包app2 業務的web頁面壓縮包

#刪除從APP1 業務目錄拷貝過來的web壓縮包
[12:42:26 root@docker tomcat-app2]#rm -fr WEBserver.tar.gz 
​
#進入到app2的web頁面目錄下
[12:43:59 root@docker tomcat-app2]#cd WEBserver/
​
#打包APP2 web頁面壓縮包
[12:46:06 root@docker WEBserver]#tar cvzf WEBserver.tar.gz ./*
​
#將WEBserver.tar.gz壓縮移動到 app2業務目錄下
[12:47:10 root@docker WEBserver]#mv WEBserver.tar.gz ../

四、修改構建腳本,區分app2業務的鏡像名

咱們的dockerfile文件其實已經不用動了,由於多個tomcat業務都是共用tomact的基礎鏡像。因此只需修改構建腳本便可,將其新的鏡像名改成 app2。web

#回到父目錄
[12:47:17 root@docker WEBserver]#cd ../
​
#修改鏡像構建腳本
[12:47:26 root@docker tomcat-app2]#vim build-command.sh
docker build -t tomcat-web:app2 .
​
docker build:        #製做鏡像
-t:                 #給鏡像作一個新名字
tomcat-web:app2:    #新鏡像名爲 app2業務
.                    #dockerfile在當前目錄下

五、執行構建鏡像腳本,製做新鏡像

#運行腳本
[12:51:34 root@docker tomcat-app2]#bash build-command.sh
Successfully built 43a79b360480     #製做成功
​
#經過查看新鏡像已製做完成
[12:51:44 root@docker tomcat-app2]#docker images 
REPOSITORY                    TAG                 IMAGE ID            CREATED             SIZE
tomcat-web                    app2                43a79b360480        33 seconds ago      914 MB

六、啓動app2容器docker

#啓動容器
[12:52:16 root@docker tomcat-app2]#docker run -it --name tomcat-app2 -p 8081:8080 -d tomcat-web:app2 bash
​
docker run:             #運行容器
-it:                    #對容器執行命令
--name tomcat-app2:     #容器名爲tomcat-app2
-p 8081:8080:           #將容器的8080端口映射到宿主機的8081端口上
-d                       #放到後臺運行
tomcat-web:app2:        #使用tomcat-web:app2鏡像
bash:                   #執行bash命令
​
#進入容器
[13:10:09 root@docker tomcat-app2]#docker exec -it tomcat-app2 bash
​
#切換爲www用戶
[root@9f78526048af /]# su www
​
#經過www用戶來啓動tomcat
[www@9f78526048af /]$ /apps/tomcat/bin/catalina.sh start
​
#最後退出容器回到宿主機

七、經過瀏覽器訪問檢測apache

http://10.0.0.117:8081/WEBserver/vim

在這裏插入圖片描述

5.4.3.1.6 修改tomcat容器的啓動日誌存放到/data/目錄下瀏覽器

#進入tomcat-app2容器
[13:11:25 root@docker tomcat-app2]#docker exec -it tomcat-app2 bash
​
#編輯tomcat的日誌配置文件
[root@9f78526048af /]# vim /apps/tomcat/conf/logging.properties
#找到這一行就該tomcat日誌存放路徑
1catalina.org.apache.juli.AsyncFileHandler.directory = /data/tomcat/logs
​
#建立/data/tomcat/logs文件用來存放tomcat日誌
[root@9f78526048af /]# mkdir /data/tomcat/logs
​
#給www普通用戶受權
[root@9f78526048af /]# chown www.www /data/tomcat/logs/ -R
​
#使用www用戶重啓tomcat服務使其配置文件生效
[root@9f78526048af /]# su - www -c "/apps/tomcat/bin/catalina.sh start"
​
#查看日誌存放路徑已經有了tomcat日誌
[root@9f78526048af /]# ll /data/tomcat/logs/
total 8
-rw-r----- 1 www www 7944 Aug  1 05:24 catalina.2020-08-01.log
​
​
#若是數tomcat起不來必定會在這個日誌中打出爲何起不來

總結:tomcat

以上就是針對java服務的鏡像構建以及啓動方式bash

更多文章和資料|點擊下方文字直達 ↓↓↓
阿里雲K8s實戰手冊
[阿里雲CDN排坑指南]CDN
ECS運維指南
DevOps實踐手冊
Hadoop大數據實戰手冊
Knative雲原生應用開發指南
OSS 運維實戰手冊app

相關文章
相關標籤/搜索