本地Mac docker+jenkins+python持續(xù)集成環(huán)境搭建

在docker中構(gòu)建jenkins平臺(tái),并集成python項(xiàng)目需要以下三個(gè)步驟:

  • 安裝docker
  • docker鏡像中安裝jenkins
  • docker鏡像中安裝python

以mac環(huán)境為例,其他windows和linux大同小異

一、安裝docker

docker:容器,簡單粗暴理解一下,容器就是裝東西的,在軟件流程中,運(yùn)維用的比較多,卷著卷著就QA也要會(huì)玩兒。我們可以把python、java等環(huán)境及環(huán)境依賴打包成一個(gè)個(gè)的鏡像放在容器中,然后部署在linux服務(wù)器上,這樣linux服務(wù)上部署python和java程序時(shí)就不需要再去安裝環(huán)境了,只需要復(fù)制鏡像就行了。一般一個(gè)linux服務(wù)上部署一套docker,一個(gè)docker里裝一套代碼及代碼環(huán)境及依賴。

1.下載docker desktop客戶端,安裝
官網(wǎng)下載地址:https://desktop.docker.com/
2.安裝好之后,執(zhí)行docker version可以查看安裝的版本號(hào),這樣說明裝好了

image.png

二、安裝jenkins

jenkins:CI/CD流程中很重要的一個(gè)工具,開源的,通用性強(qiáng)并且有著豐富的插件。

1.在docker上安裝jenkins鏡像,使用命令docker run -d --name jenkins -p 8080:8080 -p 50000:50000 -v Test_code:/var/jenkins_home jenkins/jenkins:lts
8080表示jenkins對(duì)外提供的端口,50000表示我們項(xiàng)目和jenkins之間的端口,Test_code是我自己取的名字

因?yàn)闆]有配置鏡像加速器,這個(gè)步驟有點(diǎn)慢,需要多等等...

2.訪問本機(jī)ip+8080端口,查看安裝情況,參考我的地址http://192.168.1.103:8080/可以查看安裝情況,忘了截圖,總之裝好了就能看到界面了

image.png

熟悉的頁面有沒有!!!

3.裝好之后,訪問第2步地址,需要填密碼,查看密碼用命令 docker exec -it jenkins cat /var/jenkins_home/secrets/initialAdminPassword

4.裝插件,選任意一種都行,推薦不安裝插件,后續(xù)進(jìn)jenkins里面裝,會(huì)快一些,裝完之后登錄上jenkins,如果你沒有設(shè)置賬號(hào)密碼,那就admin登錄。

5.接下來可以創(chuàng)建一個(gè)項(xiàng)目,關(guān)聯(lián)你的git倉庫,填寫shell執(zhí)行腳本,比如我是python代碼,shell腳本隨便寫一個(gè)測試一下。

touch test.py
python3 test.py
image.png

6.構(gòu)建,因?yàn)槲业膁ocker上沒有python環(huán)境,肯定是無法執(zhí)行的,會(huì)報(bào)錯(cuò)


image.png

那么我需要在鏡像中裝一個(gè)python環(huán)境

三、安裝python

1.注意這里最好用docker desktop打開terminal


image.png

2.執(zhí)行docker ps查看正在運(yùn)行的容器ID,找到j(luò)enkins的容器ID

3.進(jìn)入jenkins容器

docker exec -itu root 容器id /bin/sh
例如 docker exec -itu root b5621ac48953 /bin/sh

4.查看容器的操作系統(tǒng)cat /etc/issue會(huì)發(fā)現(xiàn)是 Debian 系統(tǒng)(不是 Ubuntu,也不是 CentOS), yum用不了,可以用 apt-get

5.先更新一下apt-get update

6.重啟docker

sudo systemctl restart docker
docker restart b5621ac48953

7.安裝python依賴

apt-get -y install gcc automake autoconf libtool make
apt-get -y install make*
apt-get -y install zlib*
apt-get -y install openssl libssl-dev
apt-get install sudo

8.開始下載,切換到 /usr/local 目錄,將下載的安裝包存放在此目錄里

cd /usr/local
sudo apt-get install wget
wget https://www.python.org/ftp/python/3.8.12/Python-3.8.12.tgz

9.解壓

tar -xvf Python-3.8.12.tgz

10.創(chuàng)建 python3 文件夾,切換到解壓后的 Python-3.8.12 目錄下

mkdir python3
cd Python-3.8.12

11.安裝

./configure --prefix=/usr/local/python3 --enable-optimizations
make
make install

12.創(chuàng)建軟鏈

ln -s /usr/local/python3/bin/python3.8 /usr/bin/python3
ln -s /usr/local/python3/bin/pip3 /usr/bin/pip3

13.查看環(huán)境是否安裝成功

python3 -V
pip3 -V

14.再次回到j(luò)enkins構(gòu)建一次,會(huì)發(fā)現(xiàn)構(gòu)建是ok的


image.png

關(guān)于python部分安裝參考文檔:
https://blog.csdn.net/wangmcn/article/details/122640502

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 227,283評(píng)論 6 530
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 97,947評(píng)論 3 413
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事。” “怎么了?”我有些...
    開封第一講書人閱讀 175,094評(píng)論 0 373
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經(jīng)常有香客問我,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 62,485評(píng)論 1 308
  • 正文 為了忘掉前任,我火速辦了婚禮,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 71,268評(píng)論 6 405
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 54,817評(píng)論 1 321
  • 那天,我揣著相機(jī)與錄音,去河邊找鬼。 笑死,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 42,906評(píng)論 3 440
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢(mèng)啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 42,039評(píng)論 0 285
  • 序言:老撾萬榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 48,551評(píng)論 1 331
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 40,502評(píng)論 3 354
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 42,662評(píng)論 1 366
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 38,188評(píng)論 5 356
  • 正文 年R本政府宣布,位于F島的核電站,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 43,907評(píng)論 3 345
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 34,304評(píng)論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 35,563評(píng)論 1 281
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 51,255評(píng)論 3 389
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 47,637評(píng)論 2 370

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