git倉庫地址:參考以下代碼完成,或者采用自己的代碼。
南澤/cicd-test
拉取項目代碼到本地
使用云服務器或虛擬機采用docker部署jenkins
安裝docker過程省略
采用docker部署jenkins,注意這里的命令,一定要映射docker路徑,否則無法找到(ps:已踩坑)
docker run -u root --name jenkins-test -d -p 8899:8080 -p 50000:50000 -v jenkins-data1:/var/jenkins_home -v /var/run/docker.sock:/var/run/docker.sock -v /usr/bin/docker:/usr/bin/docker jenkins/jenkins:lts
容器啟動成功后,采用以docker logs 查看登錄密碼
docker logs -f 容器名?
然后進入登錄界面,注意放開防火墻端口,服務器放開安全組
然后選擇安裝推薦的插件即可
插件安裝完成,自行創建一個用戶,也可以使用admin賬戶繼續。
實例配置的地址采用默認的即可
進入jenkins找到憑據管理在Manage Jenkins底下
進入倉庫后,看到賬號和密碼配置。然后配置jenkins中的用戶名和密碼即可。
點擊這里配置私人令牌
輸入驗證密碼
將這個token填寫到Jenkins配置中。
然后保存并且應用配置,接下來創建自定義風格的item任務
配置git倉庫地址,然后選擇剛剛創建的憑據。
在這里指定一個node的版本號,其它的不用勾選。會保存后默認選擇。
再選擇Build steps,再執行以下命令。
注意這里項目里要有dockerfile文件,才能執行。
# 使用基于 CentOS 的 Nginx 鏡像
FROM nginx:latest# 設置環境變量,指定項目編碼為 UTF-8
ENV LANG=en_US.UTF-8
ENV LC_ALL=en_US.UTF-8# 將 Vue 項目的構建產物(假設存放在本地的 dist 目錄)拷貝到容器內的 Nginx 靜態文件目錄
COPY ./dist/ /usr/share/nginx/html# 移除默認的nginx配置文件
RUN rm /etc/nginx/conf.d/default.conf# 將本地的 nginx.conf 文件拷貝到容器內的 Nginx 配置目錄
COPY ./nginx.conf /etc/nginx/conf.d# 暴露 Nginx 默認的 8088 端口
EXPOSE 8088# 啟動 Nginx 服務
CMD ["nginx", "-g", "daemon off;"]
nginx.conf文件在這里給出
#這里兩個環境使用一個nginx.conf文件,也可以單獨分開來#pro環境server {#監聽的端口listen 8088;server_name localhost;#設置日志#access_log logs/dev.access.log main;#定位到index.htmllocation / {#linux下HTML文件夾,就是你的前端項目文件夾root /usr/share/nginx/html;# 解決history模式try_files $uri $uri/ /index.html;#輸入網址(server_name:port)后,默認的訪問頁面index index.html;}}
然后再選擇一個執行shell,并且將這個打包的環境執行成為一個鏡像。
具體命令已在此處位置給出。
CONTAINER_NAME="test-ui"
# 檢查容器是否存在
if docker ps -a --format '{{.Names}}' | grep -q "$CONTAINER_NAME"; thenecho "容器 $CONTAINER_NAME 存在,正在刪除..."docker rm -f "$CONTAINER_NAME"if [ $? -eq 0 ]; thenecho "容器 $CONTAINER_NAME 刪除成功。"elseecho "刪除容器 $CONTAINER_NAME 時出錯。"exit 1fi
elseecho "容器 $CONTAINER_NAME 不存在。"
fi
# 通過鏡像構建程序
docker run -d --name $CONTAINER_NAME -e LANG=C.UTF-8 -e LC_ALL=C.UTF-8 -p 8088:8088 test-ui:latest
再次添加執行shell,判斷容器是否重復。最后通過docker run重新構建程序。
以上配置完成后,應用保存,然后執行構建即可。
此處大家根據具體的錯誤來排查即可,最后會執行成功。
然后是配置webhook,也是在剛剛的任務配置中配置。
在這里生成一個webhook的密碼。
然后進入gitee管理,配置webhook。
添加webhook,
這里填寫的地址就是剛剛jenkins中配置的URL,密碼也是剛剛在Jenkins中生成的隨機密碼。配置完成后點擊添加即可。注意這里需要選擇對應的事件,Push,
選擇推送代碼時出發。
然后保存應用即可,最后查看效果。