Dockerfile 部署java web的環(huán)境詳解
Dockerfile 構(gòu)建java web 環(huán)境
Dockfile 介紹:
Dockfile是一種被Docker程序解釋的腳本,Dockerfile由一條一條的指令組成,每條指令對應(yīng)Linux下面的一條命令。Docker程序?qū)⑦@些Dockerfile指令翻譯真正的Linux命令。Dockerfile有自己書寫格式和支持的命令,Docker程序解決這些命令間的依賴關(guān)系,類似于Makefile。Docker程序?qū)⒆x取Dockerfile,根據(jù)指令生成定制的image。相比image這種黑盒子,Dockerfile這種顯而易見的腳本更容易被使用者接受,它明確的表明image是怎么產(chǎn)生的。有了Dockerfile,當(dāng)我們需要定制自己額外的需求時,只需在Dockerfile上添加或者修改指令,重新生成image即可,省去了敲命令的麻煩。
用dockerfile構(gòu)建一個Java的web環(huán)境,主要分為2步,
第一步是在鏡像中安裝jdk并配置環(huán)境變量,
第二步是安裝tomcat。
先貼一下完整的dockerfile
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所在的文件夾下構(gòu)建鏡像
docker build -t="redstarofsleep/javaweb" .
最后運(yùn)行鏡像,運(yùn)行鏡像的時候記得綁定端口
docker run -d -t -i -p 8081:8080 redstarofsleep/javaweb
感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!
相關(guān)文章
如何設(shè)置docker開機(jī)自啟動,并設(shè)置容器自動重啟
這篇文章主要介紹了如何設(shè)置docker開機(jī)自啟動,并設(shè)置容器自動重啟問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2023-02-02云原生使用Docker部署mysql數(shù)據(jù)庫的詳細(xì)過程
使用docker部署mysql,可以省去mysql的安裝配置過程,而且不限制數(shù)量,即起即用,下面這篇文章主要給大家介紹了關(guān)于云原生使用Docker部署mysql數(shù)據(jù)庫的詳細(xì)過程,需要的朋友可以參考下2023-03-03