部署流程:將代碼從github上拉取下來,使用maven打包,將打包后的jar通過ssh發送到服務器上,然后構建docker鏡像,運行容器。
1.安裝插件
如果是第一次使用jenkins,需要檢查並確認安裝以下插件
首頁->Manage Jenkins->Manage Plugins->可選插件,選擇插件后點擊直接安裝
Maven Integration(maven項目的任務)
Publish Over SSH(用於構建后對服務器的操作)
2.全局工具配置
因為我是在docker里安裝的所以需要確認已經安裝
jdk(不用設置,已經默認安裝了)
git(不用設置,已經默認安裝了)
maven(沒有安裝,需要安裝)
首頁->Manage Jenkins->Global Tool Configuration->maven安裝
3.創建一個maven項目的任務
4.設置源碼管理
https://github.com/Peng-star-star/spring-boot-demo-hello
5.設置構建
注意Root POM為相對路徑
6.發送到服務器並運行
6.1創建SSH server
首頁->Manage Jenkins->Sonfigure System->Publish over SSH->新增
6.2其他設置
6.3 dockerfile
文件在github上的地址里有,將會自動pull到jenkins里,發送到服務器上。
#基於哪個鏡像 FROM java:8-jre-alpine #復制文件到容器 ADD demo-0.0.1-SNAPSHOT.jar /app.jar #聲明需要暴露的端口 EXPOSE 8080 #配置容器啟動后執行的命令,隨機數 ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/app.jar"]
6.4run.sh
文件在github上的地址里有,將會自動pull到jenkins里,發送到服務器上。
#!/bin/bash echo "stop container" docker stop springboot-demo; echo "delete container" docker rm springboot-demo; echo "delete image" docker rmi itmuch/springboot-demo-0.0.1&& echo "build image" docker build -t itmuch/springboot-demo-0.0.1 .&& echo "run container" docker run -d --name springboot-demo -p 9004:8080 itmuch/springboot-demo-0.0.1;
點擊確定
7.構建
點擊立即構建
7.1查看輸出
點擊“控制台輸出”
8.測試
在瀏覽器輸入http://172.16.1.144:9004/
好了,這樣完成了配置