1. 程式人生 > >docker部署tomcat6環境

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一下看看是否運行了

[[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
5、docker exec -t -i tomcat6-jre7 /bin/bash

進入容器內啟動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視訊,

----沒有寫不會的技術,只有你不願意花時間研究的技術