docker部署tomcat6環境
最近剛開通部落格,以前都是在有道日誌上寫日誌,蠻新穎的,沒事多寫寫!
docker搭建tomcat6環境
兩種方式:
一、你可以在docker映象中心中search,遠端連線linux伺服器,docker search tomcat,預設是從你配置的docker hub查詢所有tomcat的映象,
然後看上哪個docker pull下來就行
二、另一種方式時間夠用的話自己寫Dockerfile,專業化定製,非常簡單
FROM centos:7 MAINTAINER cyj RUN yum -y install unzip RUN yum -y install java-1.7.0-openjdk COPY apache-tomcat-6.0.53.tar.gz /usr WORKDIR /usr RUN tar -zxvf apache-tomcat-6.0.53.tar.gz RUN mv /usr/apache-tomcat-6.0.53 /usr/tomcat6 COPY crawlerHub.war /usr/tomcat6 ENV LANG en_US.UTF-8 ENV CATALINA_HOME /usr/local/tomcat EXPOSE 8080
1、不用解釋了吧?大體就是安裝環境centos7,先yum安裝unzip jdk1.7 複製同級目錄的tomcat到映象/usr下,解壓 設定環境變數,宣告執行埠8080
然後
docker build -t docker.io/tomcat:6-jre7 .
後面有個點別漏了,意思是從當前目錄查詢Dockerfile
2、docker images檢視有沒有生效
[[email protected] tomcat6]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
10.138.42.141:5000/java latest f18d4635525f 3 weeks ago 580.9 MB
tmall latest 5fc0c5a3bfb3 8 weeks ago 1.67 GB
phpwind 9 d0b19c5028c4 9 weeks ago 347.9 MB
<none> <none> 17f719986349 9 weeks ago 297.9 MB
docker.io/eboraas/apache-php latest 218f494d1b70 9 weeks ago 297.9 MB
<none> <none> 11377adb5710 9 weeks ago 415 MB
<none> <none> 6a7a79253b55 9 weeks ago 415 MB
<none> <none> 1e9b432561d7 9 weeks ago 415 MB
docker.io/php 7.0-apache a4322279ced1 10 weeks ago 390 MB
docker.io/php 7-apache 2d84744eaa37 10 weeks ago 391.3 MB
cyj/java 1.0 971ea6af5627 11 weeks ago 580.9 MB
10.138.42.141:5000/java <none> 971ea6af5627 11 weeks ago 580.9 MB
<none> <none> cef99b7a8196 11 weeks ago 492 MB
docker.io/tomcat 6-jre7 7a508cbecfa4 11 weeks ago 355.1 MB
3、執行命令
docker run -d -p 8888:8080 --name tomcat6-jre7
後臺執行-d,容器內埠8080對應伺服器8888埠,起個別名
4、docker ps一下看看是否運行了
5、docker exec -t -i tomcat6-jre7 /bin/bash[[email protected] tomcat6]# docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 4c5032ac0635 docker.io/tomcat:6-jre7 "/bin/bash" About an hour ago Up 50 minutes 0.0.0.0:8888->8080/tcp tomcat6-jre7
進入容器內啟動tomcat就行了,把war包放到webapp下面,啟動 catalina run &
容器內ps 一下有程序代表成功了
exit 退出
我開始第3部的時候直接啟動進入互動模式
docker run -p 8888:8080 --name tomcat6-jre7 -t -i docker.io/tomcat:6-jre7 /bin/bash
exit退出的時候自動把容器關了。
彆著急,
docker ps -all的時候還是存在的,只是status 變成 Exited.....
docker start 容器的names啟動
--------------------後期更新專案-------------------------------------------------
6、如果要更新自己的專案需要先 docker stop 容器名字
docker ps 一下發現沒有了
docker run -p 8888:8080 --name tomcat6-jre7
如果此時提示容器名字**已經存在,不能啟動
docker rm 容器名字
再執行run
docker cp crawlerHub.war tomcat6-jre7:/usr/local/tomcat/webapps/
把容器外的最新的war包複製到容器內的目錄中,tomcat6-jre7是容器名字,冒號後面是容器中要存放的檔案路徑
然後進入互動模式
docker exec -t -i tomcat6-jre7 /bin/bash
啟動tomcat後exit
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------
太弱智了,還可以掛載的方式簡單方便
docker run -d -p 8888:8080 -v /home/rmdm/source/docker/java/tomcat6/war:/usr/local/tomcat/webapps docker.io/tomcat:6-jre7 以後再改更新專案直接更新/home/rmdm/source/docker/java/tomcat6/war下面的war包,tomcat下面自動更新,專案也會自動更新了。訪問瀏覽器http://******:8888/*****
success!
如果基礎比較薄弱的可以看看菜鳥教程,不喜歡看文字的可以看看51cto視訊,
----沒有寫不會的技術,只有你不願意花時間研究的技術