一.安裝gogs
1.拉取gogs鏡像
docker pull gogs/gogs
2.運行gogs容器
docker run -di --name=gogs -p 10022:22 -p 3000:3000 -v /var/gogsdata:/data gogs/gogs
3.訪問地址:http://xxxxxx:3000,界面如下, 其中數據庫類型一般選擇SqlLite,域名填ip,應用URL填服務器的,其余默認
4.登錄gogs並創建倉庫
二.安裝jenkins
1.安裝Jinkins
docker pull jenkins/jenkins
2.啟動Docker容器
#新建文件夾
mkdir /var/jenkins
#賦予權限
chmod 777 /var/jenkins
docker run -p 8080:8080 -p 50000:50000 -d -v /var/jenkins:/var/jenkins_home --name myjenkins jenkins/jenkins
3.初始化jenkins
打開瀏覽器http:xxxx:8080
4.校驗密鑰
docker logs myjenkins 或 進入myjenkins容器 docker exec -it myjenkins bash 輸入上圖紅色路徑 cat xxxxx 復制密碼輸入
5.安裝推薦插件 (等待安裝完成)
6.設置管理員
7.安裝 Publish Over SSH 和 gogs 插件
進入jenkins管理
選擇插件管理
在可選插件里分別搜索 Publish Over SSH 和 gogs 點擊立即安裝,我這里已經安裝好了,就不必再裝了
等待安裝完成,安裝進度可在左邊的更新中心查看
8.配置SSH
進入系統設置
9.配置gogs webhook
進入gog后台的倉庫
進入jenkins后台
如果設置了私有倉庫,jenkins也有帶賬號拉取,具體如下:
繼續往下拉,設置ssh
chown -R nobody:nobody /var/work/BlazorApp; cd /var/work/BlazorApp; #進入jenkins拉取目錄 docker-compose up --build -d;#執行docker-compose構建 docker images;
保存成功后,我們在jenkins首頁就會看到對應的任務了
點擊任務 進去試試水
打完收工,配置好之后,gogs每推送一次,就會觸發webhook到jenkins自動部署到docker