Jenkins 服務(wù)搭建 (golang)

  1. docker compose 搭建
version: "3.4"
services:
      go_jenkins:
                restart: always
                image: jenkins/jenkins:latest
                container_name: go_jenkins
                ports:
                        - 8080:8080
                        - 50000:50000 
                user: root
                volumes:
                        - ./jenkins/:/var/jenkins_home
                        - /var/run/docker.sock:/var/run/docker.sock
                        - /usr/bin/docker:/usr/bin/docker
  • 運行啟動
    docker-compose -f /home/ubuntu/tools/docker-compose.yml up -d go_jenkins
  • 獲取初始密碼
    cat /home/ubuntu/tools/jenkins/secrets/initialAdminPassword
    或者
    sudo docker exec -it go_jenkins cat /var/jenkins_home/secrets/initialAdminPassword
  1. 安裝golang
  • awd 安amd包
    https://go.dev/dl/go1.20.5.linux-amd64.tar.gz
wget https://go.dev/dl/go1.20.5.linux-amd64.tar.gz
tar -zxvf go1.20.5.linux-amd64.tar.gz
ln -s /usr/local/src/go/bin/go /usr/bin/go
ln -s /usr/local/src/go/bin/gofmt /usr/bin/gofmt
  1. jenkins 配置
  • 環(huán)境變量


    image.png

    image.png
  • 開啟git 服務(wù)


    image.png
  • pro_1 配置目標(biāo)服務(wù)器訪問權(quán)限
    把jenkins docker 容器里的公鑰辜腺,添加到生成服務(wù)器的.ssh/authorized_keys中
  • 添加docker jenkins 服務(wù)公鑰到github ssh key 中
  • 配置項目執(zhí)行腳本
    Makefile 文件
# 當(dāng)前路徑
CURRENT=$(shell pwd)
# 編譯目錄
BUILD_DIR=build

localBin:
    rm -rf $(BUILD_DIR)
    mkdir -p $(BUILD_DIR)
    mkdir -p $(BUILD_DIR)/config
    mkdir -p $(BUILD_DIR)/logs
    cp -rf config/* $(BUILD_DIR)/config
    go mod tidy &&  go build  -o $(CURRENT)/$(BUILD_DIR)/cmd $(CURRENT)/main.go

Build Steps

#!/bin/bash
set -e
cd code && go mod tidy && cd ..
make localBin
cd build && tar cvf ./vic.tar ./cmd ./config && cd ..
ssh ${PRO_1} 'mkdir -p ~/jenkins/vic'
scp ./build/vic.tar ${PRO_1}:~/jenkins/vic/vic.tar
ssh ${PRO_1} 'cd ~/jenkins/vic/ && tar xvf vic.tar && chmod +x cmd'
  1. 安裝super
sudo apt update && sudo apt install supervisor
sudo systemctl status supervisor

配置:
[program:vic]
directory=/home/ubuntu/jenkins/vic/
command=/home/ubuntu/jenkins/vic/cmd 
autorestart=true
autostart=true
stderr_logfile=/var/log/supervisor/vic.err.log
stdout_logfile=/var/log/supervisor/vic.out.log
user=ubuntu
stopsignal=INT
startsecs=1

其他

  • 解決私有倉庫引用的問題
首先丰辣,命令行運行 go env -w GOPRIVATE="github.com/Super"焰扳,將似有倉庫加入 GOPRIVATE 中,略過 go mod 校驗
然后藐石,使用 idea/goland 的同學(xué)即供,請在 setting-Go-GoModules 中添加相應(yīng) GOPRIVATE 的配置,配置參數(shù)同上
最后于微,配置 git 的權(quán)限校驗逗嫡,共有兩種方案
    - 1. 直接替換 git 的 clone 方案 ,強制將 https 模式改成 ssh 模式株依,只需要命令行運行 
git config --global --add url."git@github.com:".insteadOf "https://github.com/" 
即可
    - 2. 在命令行分別運行 
export GIT_TERMINAL_PROMPT=1 
和 
git config --global credential.helper store 
兩條命令驱证,在 go mod tidy/go mod download 的時候按提示輸入自己的 git 用戶名和密碼即可

參考資料

https://learnku.com/articles/73393

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市恋腕,隨后出現(xiàn)的幾起案子抹锄,更是在濱河造成了極大的恐慌,老刑警劉巖荠藤,帶你破解...
    沈念sama閱讀 211,348評論 6 491
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件伙单,死亡現(xiàn)場離奇詭異,居然都是意外死亡哈肖,警方通過查閱死者的電腦和手機车份,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,122評論 2 385
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來牡彻,“玉大人,你說我怎么就攤上這事出爹∽穑” “怎么了?”我有些...
    開封第一講書人閱讀 156,936評論 0 347
  • 文/不壞的土叔 我叫張陵严就,是天一觀的道長总寻。 經(jīng)常有香客問我,道長梢为,這世上最難降的妖魔是什么渐行? 我笑而不...
    開封第一講書人閱讀 56,427評論 1 283
  • 正文 為了忘掉前任轰坊,我火速辦了婚禮,結(jié)果婚禮上祟印,老公的妹妹穿的比我還像新娘肴沫。我一直安慰自己,他們只是感情好蕴忆,可當(dāng)我...
    茶點故事閱讀 65,467評論 6 385
  • 文/花漫 我一把揭開白布颤芬。 她就那樣靜靜地躺著,像睡著了一般套鹅。 火紅的嫁衣襯著肌膚如雪站蝠。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,785評論 1 290
  • 那天卓鹿,我揣著相機與錄音菱魔,去河邊找鬼。 笑死吟孙,一個胖子當(dāng)著我的面吹牛澜倦,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播拔疚,決...
    沈念sama閱讀 38,931評論 3 406
  • 文/蒼蘭香墨 我猛地睜開眼肥隆,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了稚失?” 一聲冷哼從身側(cè)響起栋艳,我...
    開封第一講書人閱讀 37,696評論 0 266
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎句各,沒想到半個月后吸占,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 44,141評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡凿宾,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,483評論 2 327
  • 正文 我和宋清朗相戀三年矾屯,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片初厚。...
    茶點故事閱讀 38,625評論 1 340
  • 序言:一個原本活蹦亂跳的男人離奇死亡件蚕,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出产禾,到底是詐尸還是另有隱情排作,我是刑警寧澤,帶...
    沈念sama閱讀 34,291評論 4 329
  • 正文 年R本政府宣布亚情,位于F島的核電站妄痪,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏楞件。R本人自食惡果不足惜衫生,卻給世界環(huán)境...
    茶點故事閱讀 39,892評論 3 312
  • 文/蒙蒙 一裳瘪、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧罪针,春花似錦彭羹、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,741評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至西篓,卻和暖如春愈腾,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背岂津。 一陣腳步聲響...
    開封第一講書人閱讀 31,977評論 1 265
  • 我被黑心中介騙來泰國打工虱黄, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人吮成。 一個月前我還...
    沈念sama閱讀 46,324評論 2 360
  • 正文 我出身青樓橱乱,卻偏偏與公主長得像,于是被迫代替她去往敵國和親粱甫。 傳聞我的和親對象是個殘疾皇子泳叠,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 43,492評論 2 348

推薦閱讀更多精彩內(nèi)容