Dockerfile 構建java web 環境
Dockfile 介紹:
Dockfile是一種被Docker程序解釋的腳本,Dockerfile由一條一條的指令組成,每條指令對應Linux下面的一條命令。Docker程序將這些Dockerfile指令翻譯真正的Linux命令。Dockerfile有自己書寫格式和支持的命令,Docker程序解決這些命令間的依賴關系,類似于Makefile。Docker程序將讀取Dockerfile,根據指令生成定制的image。相比image這種黑盒子,Dockerfile這種顯而易見的腳本更容易被使用者接受,它明確的表明image是怎么產生的。有了Dockerfile,當我們需要定制自己額外的需求時,只需在Dockerfile上添加或者修改指令,重新生成image即可,省去了敲命令的麻煩。
用dockerfile構建一個Java的web環境,主要分為2步,
第一步是在鏡像中安裝jdk并配置環境變量,
第二步是安裝tomcat。
先貼一下完整的dockerfile
1
2
3
4
5
6
7
8
9
10
11
12
|
FROM ubuntu:14.04 MAINTAINER *** "***@******.com" RUN apt-get update ADD jdk-8u77-linux-x64. tar .gz /usr/local/java ENV JAVA_HOME /usr/local/java/jdk1 .8.0_77 ENV PATH $JAVA_HOME /bin :$PATH ENV CLASSPATH .:$JAVA_HOME /lib COPY apache-tomcat-8.0.33/ /usr/local/tomcat/apache-tomcat-8 .0.33/ #RUN unzip /usr/local/tomcat/apache-tomcat-8.0.33.zip RUN chmod +x /usr/local/tomcat/apache-tomcat-8 .0.33 /bin/ *.sh EXPOSE 8080 ENTRYPOINT /usr/local/tomcat/apache-tomcat-8 .0.33 /bin/startup .sh && /bin/bash |
原始鏡像是ubuntu14.04,然后將jdk的和tomcat的安裝包放到和dockerfile相同的目錄下。
這個Dockerfile還是比較簡單的,jdk和tomcat也都是不需要編譯的,都是解壓即用,所以沒什么特殊的地方。
Dockerfile編輯完了,就在Dockerfile所在的文件夾下構建鏡像
1
|
docker build -t= "redstarofsleep/javaweb" . |
最后運行鏡像,運行鏡像的時候記得綁定端口
1
|
docker run -d -t -i -p 8081:8080 redstarofsleep /javaweb |
感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!
原文鏈接:http://blog.csdn.net/redstarofsleep/article/details/53669003