docker系列學習(三)

一. 製作一個自定義的tomcat的Dockerfile

  1. 創建文件: index.jsp, 內容爲:
hello docker!
  1. 創建與index.jsp文件的同級目錄文件: Dockerfile(不能更改名稱), 內容爲:
FROM tomcat
RUN rm -rf webapps/ROOT/*
COPY index.jsp webapps/ROOT/index.jsp

from: 指定基礎鏡像爲Tomcat, 版本爲最新版
run 在基礎鏡像上加一層鏡像, 執行刪除ROOT文件夾下的所有文件
copy 複製上下文路徑的index.jsp到ROOT目錄下
注意:
run和copy都使用了相對路徑, 因爲Tomcat鏡像默認的工作目錄爲: /usr/local/tomcat

  1. 構建鏡像
docker build -t hello-docker .

docker build 構建鏡像命令
-t(tag) 指定鏡像名稱和版本號
. 指定鏡像包上下文
注意:
構建鏡像是docker引擎做的事情, 客戶端需要打包. 所在的文件夾到docker-server, 所以, 如果index.jsp文件在Dockerfile目錄之外(也可以是下級目錄), docker-server就找不到該文件, 就無法進行一些列的操作

  1. 實例化鏡像, 運行容器
docker run -d --rm -p 8080:8080 <鏡像ID>

-d 後臺運行
--rm 容器停止後, 自動刪除容器
-p 端口映射

  1. 訪問Tomcat
<宿主機地址>:8080
hello docker!

二. 製作一個自定義的springboot項目的dockerfile

  1. 上傳項目jar包: springboot-demo-1.0.0-SNAPSHOT.jar 到服務器指定路徑
  2. 在該目錄下創建Dockerfile, 內容爲:
FROM java:8
COPY springboot-demo-1.0.0-SNAPSHOT.jar app.jar
EXPOSE 8999 
CMD java -jar app.jar

expose 暴露端口, 可以暴露多個端口
cmd 當容器啓動時, 執行的命令. 當Dockerfile中多條cmd語句, 默認執行最後一條.

  1. 構建鏡像
docker build -t springboot-demo .
  1. 運行容器
docker run -d --name springboot-demo  -p 8999:8999 <鏡像ID>
  1. 訪問Tomcat
<宿主機地址>:8999/path
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章