Docker 安裝tomcat 並匯出tomcat配置檔案
阿新 • • 發佈:2021-06-16
檢視Tomcat映象:
[root@VM-0-4-centos ~]# docker search tomcat NAME DESCRIPTION STARS OFFICIAL AUTOMATED tomcat Apache Tomcat is an open source implementati… 3049 [OK] tomee Apache TomEE is an all-Apache Java EE certif… 88 [OK] dordoka/tomcat Ubuntu 14.04, Oracle JDK 8 and Tomcat 8 base… 57 [OK] bitnami/tomcat Bitnami Tomcat Docker Image 37 [OK] kubeguide/tomcat-app Tomcat image for Chapter 1 30 consol/tomcat-7.0 Tomcat 7.0.57, 8080, "admin/admin" 18 [OK] cloudesire/tomcat Tomcat server, 6/7/8 15 [OK] aallam/tomcat-mysql Debian, Oracle JDK, Tomcat & MySQL 13 [OK] arm32v7/tomcat Apache Tomcat is an open source implementati… 11 rightctrl/tomcat CentOS , Oracle Java, tomcat application ssl… 6 [OK] unidata/tomcat-docker Security-hardened Tomcat Docker container. 5 [OK] amd64/tomcat Apache Tomcat is an open source implementati… 3 arm64v8/tomcat Apache Tomcat is an open source implementati… 3 cfje/tomcat-resource Tomcat Concourse Resource 2 jelastic/tomcat An image of the Tomcat Java application serv… 2 oobsri/tomcat8 Testing CI Jobs with different names. 2 fabric8/tomcat-8 Fabric8 Tomcat 8 Image 2 [OK] picoded/tomcat7 tomcat7 with jre8 and MANAGER_USER / MANAGER… 1 [OK] camptocamp/tomcat-logback Docker image for tomcat with logback integra… 1 [OK] chenyufeng/tomcat-centos tomcat基於centos6的映象 1 [OK] 99taxis/tomcat7 Tomcat7 1 [OK] ppc64le/tomcat Apache Tomcat is an open source implementati… 1 secoresearch/tomcat-varnish Tomcat and Varnish 5.0 0 [OK] softwareplant/tomcat Tomcat images for jira-cloud testing 0 [OK] s390x/tomcat Apache Tomcat is an open source implementati… 0
這裡列出了許多,但是我一般找官方的那個[official 是OK的]。
[root@VM-0-4-centos ~]# docker pull tomcat:8.5.66 8.5.66: Pulling from library/tomcat d960726af2be: Already exists e8d62473a22d: Already exists 8962bc0fad55: Already exists 65d943ee54c1: Already exists da20b77f10ac: Already exists fb6a778e6477: Pull complete ae7884f0e61b: Pull complete 5a229cc6592e: Pull complete 1c2d6d25c04a: Pull complete 39b99cdc3584: Pull complete Digest: sha256:9ac86d435387421c839a4456a34a55fffc230701f1b40563409e589650b556f9 Status: Downloaded newer image for tomcat:8.5.66 docker.io/library/tomcat:8.5.66
tomcat為了安全,8.5.2在之後的版本webapps下面預設是空的。據說8.5.2版本沒有這個問題。
建立容器
[root@VM-0-4-centos ~]# docker run -d --name tomcat_test -p 8081:8080 tomcat:8.5.66 -v /usr/local/tomcat/webapps:/www
WARNING: IPv4 forwarding is disabled. Networking will not work.
c6a7bee051670d484db8fb1a1754ae59ac5a4da0c67bc9ec3c07a52e108bc2eb
提示說是ipv4轉發未啟用,這個先不管。
/usr/local/tomcat/webapps是docker容器裡的路徑
/www是宿主機路徑
看一下運行了嗎
[root@VM-0-4-centos ~]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
c6a7bee05167 tomcat:8.5.66 "catalina.sh run" 4 minutes ago Up 4 minutes 0.0.0.0:8081->8080/tcp, :::8081->8080/tcp tomcat_test
需要將這兩個路徑的檔案複製出來,當然也可以直接進入改,但是我個人比較喜歡複製出來,然後把容器的路徑映射出來。不知道為什麼tomcat的容器沒有這樣的選項,必須要先複製出來再對映,否則會報錯。
把docker容器內部的檔案複製到本地
docker cp c6a7bee05167:/usr/local/tomcat/conf /path/filename
docker cp c6a7bee05167:/usr/local/tomcat/conf /path/filename
/usr/local/tomcat/conf
這是配置檔案路徑
/usr/local/tomcat/webapps
這是一些預設網站路徑