您好,登錄后才能下訂單哦!
這篇文章將為大家詳細講解有關docker中如何制作JDK+tomcat鏡像,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。
方式一
首先,準備好想要的jdk和tomcat,另外,我們需要創建一個Dockerfile文件,什么,你說你不知道Dockerfile是什么也不會寫Dockerfile文件?哦,那也沒關系吧,你Ctrl+C就好了。下面展示一個Dockerfile文件的完整內容:
FROM ubuntu:14.10 MAINTAINER linx #把java與tomcat添加到容器中 ADD jdk-8u31-linux-x64.tar.gz /usr/local/ ADD apache-tomcat-8.0.20.tar.gz /usr/local/ #配置java與tomcat環境變量 ENV JAVA_HOME /usr/local/jdk1.8.0_31 ENV CLASSPATH $JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar ENV CATALINA_HOME /usr/local/apache-tomcat-8.0.20 ENV CATALINA_BASE /usr/local/apache-tomcat-8.0.20 ENV PATH $PATH:$JAVA_HOME/bin:$CATALINA_HOME/lib:$CATALINA_HOME/bin #容器運行時監聽的端口 EXPOSE 8080
當然,你還是要修改一點點的,就是jdk和tomcat的版本啊,然后版本后面對應的路徑啊,其余的就可以不改了。
然后呢,jdk和tomcat和這個文件需要放在同一個路徑中。
在然后,在當前路徑中召喚出終端,輸入
Docker build –t linx/tomcat
這個命令會遵從Dockerfile文件的規則構建鏡像。猴子造完了之后,run起來,使用下面的命令啟動tomcat
./usr/local/apache-tomcat-8.0.20/bin/startup.sh
OK,訪問8080端口吧,可以看到熟悉的那只貓了。
過程就這么多,開始題外話:容器開放了8080端口,但是你訪問容器里面的tomcat并不是用8080哦,你懂的,容器的端口需要你主動映射到宿主機的某個端口的,算了,告訴你一個命令吧,來做端口映射:
#sudo docker run -d -p 5000:8080 training/webapp
啟動一個容器的時候可以借助于-p參數來將8080端口映射成主機的5000端口,這樣你訪問主機的5000端口就到容器的8080端口啦。
還有,實際上,Dockerfile文件幫你完成了容器里面環境變量的設置啊等等內容,其實還可以做更多更強大的事,你必須一定要自己查文檔看!
方式二
雖然麻煩,還是提一下,畢竟也是非常正常的途徑。
首先呢,下一個隨便個什么系統的空的鏡像吧,然后run起來,進去,其實你此時面對的就是一個剛裝了新系統的主機啊,所以其實你又懂了,開始下載想要的jdk和tomcat吧,哦,原來你的主機上已經下好了,那好,這樣:
docker run -i -t -v /root/software/:/mnt/software/ 25c5298b1a36 /bin/bash
上面這個方式來啟動容器可以實現將你的software文件夾掛載到容器的mnt/software/目錄下,所以呢,等你進去容器,進到那個文件夾就已經看到你想要的jdk和tomcat了。
好了,開始解壓吧,開始設置環境變量吧。什么,不知道Linux中怎么設置環境變量?那就不弄了吧。
vi ~/.bashrc,進入vi編輯模式 在末尾添加如下配置 export JAVA_HOME=/opt/jdk/bin export PATH=$PATH:$JAVA_HOME 輸入wq退出vi界面 //讓環境變量生效 source ~/.bashrc
上面一小段linux設置環境變量的方法,僅供參考,更多的方式更強大的功能你必須要查文檔!
所以呢,我們現在是設置好了jdk和tomcat的環境變量了對吧,還沒好?哦,我們接著說下一步,這個時候不是已經在容器里面設置好了環境變量了嗎,可以輸入Java -version測一下好使了沒有。然后輸入
exit
退出容器,此時容器處于暫停狀態,再然后
docker ps -a,列出所有的容器
看到剛剛exit的容器,記住容器id,因為我們要根據該id創建出新的自己的鏡像,使用如下命令:
docker commit 57c312bbaad1 myName/javaweb
然后我們就創建出了一個名叫javaweb的鏡像了,里面的jdk和tomcat都是我們指定的。
關于“docker中如何制作JDK+tomcat鏡像”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,使各位可以學到更多知識,如果覺得文章不錯,請把它分享出去讓更多的人看到。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。