前言
在前后端分離開發的項目當中為了避免重復構建發布,我們需要部署一個持續發布環境,而目前的開發環境服務器都是基于 CentOS 的,因此每次在本地發布之后還需要打包,上傳,部署,十分繁瑣。故這里采用了比較成熟的Jenkins 作為持續部署環境。
方法如下:
1.新建一個ASP.NET Core MVC應用程序:
需要勾選Docker支持
2.將其上傳到git:
3.建立Jenkins任務
(1)選擇“新建任務”,輸入任務名稱,選擇“自由風格項目”,然后點擊確定:
(2)選擇“源代碼管理”,填入我們的git地址
輸入H/2 * * * *設置兩分鐘拉取一次
(3)構建環境
勾上 Delete workspace before build start 是設置構建前刪除工作區
勾上 Abort the build if it's stuck 是設定構建的超時時間,如果構建使用的時間超過設定的時間,那么就認為這次的構建是失敗的。筆者這里超時設置的是10分鐘
(4)增加一個Execute Shell 腳本,并填寫以下腳本內容
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
#!/bin/bash # 獲取短版本號 GITHASH=`git rev-parse -- short HEAD` echo ---------------Remove-Orphans------------------ docker-compose -f ./docker-compose.yml -f ./docker-compose. override .yml -p webapplication6 down --rmi local --remove-orphans echo ------------------Config----------------------- docker-compose -f ./docker-compose.ci.build.yml -p webapplication6 config echo ------------------Build------------------------ docker-compose -f ./docker-compose.ci.build.yml -p webapplication6 up --build echo ---------------Publishing...------------------ docker-compose -f "./docker-compose.yml" -f "./docker-compose.override.yml" -p webapplication6 up -d --build echo ---------------Clear-Images...------------------ docker rmi $(docker images -f "dangling=true" -q) echo ---------------Clear-Containers...------------------ docker rm webapplication6_ci-build_1 |
2018.4.24 加入鏡像和容器清理命令,所以上面的腳本和下圖不一樣,以上面的shell腳本為準
應用保存,回到項目界面上。點擊立即構建進行部署工作
我們可以查看控制臺輸出:
待構建成功以后訪問url(你的ip:端口)試試效果。
不知道端口的可以通過命令docker ps
查看
總結
以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,如果有疑問大家可以留言交流,謝謝大家對服務器之家的支持。
原文鏈接:http://www.cnblogs.com/stulzq/p/8627824.html