在docker上部署springboot項目


〇、環境

開發:win10 + idea2020.1 + java11

部署:centos7+docker

 

一、下載openjdk

docker pull openjdk:版本號

docker run --name=myopenjdk -idt openjdk:版本號

 

二、打包springboot項目注意事項

  1.去掉Test步驟,快速打包;

  選中test,點擊藍色閃電,選中package,點擊綠色三角。

  

 

 

  2.文件讀取方式

    不用使用***.getFile(),***.getFileName(),而是使用如下方式:

 1 InputStream is=this.getClass().getResourceAsStream("/static/***.csv");
 
         
 2 BufferedReader br = new BufferedReader(new InputStreamReader(is));

  3.layui的圖標

    要使用下圖第一種方式。若使用第二種方式很可能只顯示一個 口

    

 

三、創建jar鏡像

  1.Dockerfile文件

  把打包好的jar包放到CentOS7里,並在同目錄下新建一個文件——Dockerfile,文件內容如下(要注意java版本、jar包名的修改):

# 基於openjdk 鏡像
FROM openjdk:版本號
 
# 將本地文件夾掛在到當前容器
VOLUME /tmp
 
# 復制文件到容器
ADD demo-0.0.1-SNAPSHOT.jar app.jar
 
# 聲明需要暴露的端口
EXPOSE 8080
 
# 配置容器啟動后執行的命令
RUN bash -c "touch /app.jar" ENTRYPOINT [
"java","-Djava.security.egd=file:/dev/./urandom","-jar","/app.jar"]

 

  2.創建鏡像

docker build -t server .
  • -t 表示將新鏡像命名為 server
  • 末尾的 . 指明 build context 為當前目錄
  • Docker 默認會從 build context 中查找 Dockerfile 文件,我們也可以通過 -f 參數指定 Dockerfile 的位置。

 

  3.運行鏡像

docker run --net host -it -d -p 8080:8080  server

 

四、讓防火牆開放8080端口

  systemctl start firewalld                  開啟防火牆

  firewall-cmd --zone=public --add-port=8080/tcp --permanent  開放8080端口


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM