gitlab-ci配置服務(wù)器自動拉取方式
1、項(xiàng)目中找到
settings->ci/cd->runner->Set up a specific Runner manually


2、這里我的 gitlab-runner 已經(jīng)裝好過了
我們需要到 安裝 gitlab 的服務(wù)器中執(zhí)行下
gitlab-runner register
這個(gè)命令,這時(shí)彈出的容器中需要輸入 url和token,我們使用1 中找到的
輸入完以后再輸入描述,自己看著寫,這時(shí)還會要求輸入 Enter tags for the runner
這里我理解的tags是后面 .gitlab-ci.yml 文件中一tags,他們一致時(shí)就會觸發(fā),然后進(jìn)行自動化部署
這里我們輸入 auto-upload-test 確定后又讓你輸入
Enter an executor: docker, docker-ssh, parallels, ssh, custom, shell, virtualbox, docker+machine, docker-ssh+machine, kubernetes:
這里我們會用到 shell,到時(shí)候讓 gitlab-ci.yml 調(diào)用 sh 文件,我們就輸入個(gè)
shell
Enter tags for the runner (comma-separated): auto-upload-test Registering runner... succeeded runner=eG2jn6vJ Enter an executor: docker, docker-ssh, parallels, ssh, custom, shell, virtualbox, docker+machine, docker-ssh+machine, kubernetes: shell
確定后就注冊成功了,這時(shí)我們可以看見剛才設(shè)置的 runner

3、這時(shí)我們打開項(xiàng)目中的 .gitlab-ci.yml
這里注意,前面有個(gè)點(diǎn),這里我們需要把 tags修改成我們剛才設(shè)置的
script是我們要執(zhí)行的腳本路徑only是只在 master分支上面的代碼有變化時(shí)進(jìn)行操作tags就是我們之前設(shè)置的
stages:
- deploy
deploy:
stage: deploy
script:
- /root/autoupload.sh
only:
- master
tags:
- auto-upload-test
不然會提示錯(cuò)誤,并且執(zhí)行不了
This job is stuck because you don't have any active runners online or available with any of these tags assigned to them: autopull Go to project CI settings
這里的 autopull就是我們修改前的 tags
4、編寫 sh 文件
并把 sh文件放到對應(yīng)的位置中
#!/bin/bash ssh root@192.168.*.* << ssh233 cd /usr/local/apache-tomcat-8.5.28/*** git pull origin master pwd ssh233
這里是利用免登錄配置,把gitlab服務(wù)器上的 /root/.ssh/id_rsa.pub 里的內(nèi)容復(fù)制到目標(biāo)服務(wù)器中的 /root/.ssh/authorized_keys,就可以免密碼登錄了。
這里是在代碼服務(wù)器上免密登錄到目標(biāo)服務(wù)器中,在目標(biāo)服務(wù)器上面拉取代碼
登錄到對應(yīng)要發(fā)布的服務(wù)器上,拉取 gitlab的代碼,這樣就能達(dá)到 git上傳后能自動發(fā)布到對應(yīng)的服務(wù)器上。這里的 * 號改成對應(yīng)的ip地址與文件存放路徑即可
總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
如何使用docker compose 部署ELK 8.X及監(jiān)控
這篇文章主要介紹了如何使用docker compose 部署ELK 8.X及監(jiān)控,包括前置環(huán)境配置及docker compose啟動/停止的命令,感興趣的朋友跟隨小編一起看看吧2023-10-10
Docker實(shí)現(xiàn)自定義jkd鏡像上傳阿里云
本文詳解基于Ubuntu構(gòu)建JDK8自定義Docker鏡像及上傳至阿里云倉庫的流程,涵蓋Dockerfile編寫、鏡像構(gòu)建、容器運(yùn)行、環(huán)境變量配置,以及阿里云賬戶準(zhǔn)備、鏡像推送與測試等關(guān)鍵步驟2025-08-08
使用 docker部署tomcat并接入skywalking的使用
這里主要介紹了使用 docker 部署 tomact 并接入 skywalking 的使用,因?yàn)樵诰W(wǎng)上并沒有查到太多相關(guān)的信息,所以這里記錄下來,需要對有需求的小伙伴提供一些幫助2021-04-04
Docker運(yùn)行Web服務(wù)實(shí)戰(zhàn)之Tomcat的詳細(xì)過程
Tomcat是由Apache軟件基金會下屬的Jakarta項(xiàng)目開發(fā)的一個(gè)Servlet容器,按照Sun Microsystems提供的技術(shù)規(guī)范,實(shí)現(xiàn)了對Servlet和Java Server Page(JSP)的支持,這篇文章主要介紹了Docker運(yùn)行Web服務(wù)實(shí)戰(zhàn)之Tomcat的詳細(xì)過程,需要的朋友可以參考下2022-08-08

