亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

使用Docker+jenkins+python3環(huán)境搭建超詳細(xì)教程

 更新時(shí)間:2021年07月13日 11:09:25   作者:測(cè)試小小小白  
這篇文章主要介紹了使用Docker+jenkins+python3環(huán)境搭建超詳細(xì)教程,本文通過(guò)多種方法結(jié)合示例代碼給大家詳細(xì)介紹,需要的朋友可以參考下

前言:

  自動(dòng)化寫好后需要在服務(wù)器上每日定時(shí)運(yùn)行遇到,這樣的一個(gè)問(wèn)題,Jenkins容器是在docker中安裝的 ,然后從git上拉取代碼 發(fā)現(xiàn)代碼在jenkins容器的目錄當(dāng)中,運(yùn)行的時(shí)候提示沒(méi)有安裝python環(huán)境還第三方庫(kù)。

解決方法有3種:

  第一種:?jiǎn)?dòng)jenkins容器時(shí) 將容器的目錄掛載到宿主機(jī)目錄上去執(zhí)行(方法不能實(shí)現(xiàn))Pass

  第二種:在jenkins上創(chuàng)建本地節(jié)點(diǎn),將代碼拉取到本地 然后去運(yùn)行本地項(xiàng)目(在本機(jī)上使用比較方便,但是局限性比較?。?/p>

  第三種:重新封裝jenkins鏡像,在jenkins鏡像中安裝python3的環(huán)境 在容器中執(zhí)行項(xiàng)目(步驟麻煩,但后續(xù)永久使用)

第一種方法和第二種方法前提都需要在服務(wù)器中安裝docker和jenkins鏡像

一、安裝docker

  安裝dockerhttps://www.runoob.com/docker/docker-tutorial.html

二、安裝jenkisn鏡像

1.查找docker上的鏡像
    docker search jenkins
  
2.下載自己所需要的鏡像
    docker pull jenkinsci/blueocean
  
3.查看是否下載成功
    docker images
  
4.啟動(dòng)下載的鏡像
  docker run -d -p 10240:8080 -p 10241:50000 -v /jenkins_autotest/jenkins_home:/var/jenkins_home -v /etc/localtime:/etc/localtime  -e JAVA_OPTS=-Duser.timezone=Asia/Shanghai --name jenkint_test jenkinsci/blueocean
 
#說(shuō)明:docker run    運(yùn)行
  -d:后臺(tái)運(yùn)行容器  -p:指定容器的端口映射 -p 10240:8080 表示將容器的8080端口映射到宿主機(jī)的10240端口上 ,映射多個(gè)端口使用 -p 8082:8080  -p 8083:8081
   -v:掛載宿主機(jī)目錄和 docker容器中的目錄  /Users/songpeilun/jenkins_home 本地宿主機(jī)絕對(duì)目錄;/var/jenkins_home    容器目錄(將容器目錄掛載到本地)
   -v:/etc/localtime:/etc/localtime 本地時(shí)間和容器時(shí)間同步
   -e JAVA_OPTS=-Duser.timezone=Asia/Shanghai     設(shè)置容器時(shí)間為上海時(shí)間(不然容器時(shí)間和本地時(shí)間相差8小時(shí))
   --name jenkint_test  設(shè)置容器的名稱
   jenkinsci/blueocean        選擇鏡像名稱啟動(dòng)容器(默認(rèn)鏡像后面會(huì)加latest  如果拉取自己創(chuàng)建的鏡像后面要加自己的版本號(hào)  jenkinsci/blueocean:版本號(hào)TAG )

   ⚠️ 容器目錄掛載本地目錄時(shí) 一定要給本地文件夾賦予權(quán)限  chmod 777 jenkins_home

輸入docker images查看jenkins鏡像是否安裝成功

docker images

查看容器是否運(yùn)行

docker ps

可以看出docker中已經(jīng)有運(yùn)行的容器jenkins

這樣就說(shuō)明 已經(jīng)安裝好jenkins 現(xiàn)在就可以啟動(dòng)jenkins了

三、啟動(dòng)jenkins

瀏覽器輸入 服務(wù)器的ip+端口號(hào) http://47.99.98.250:10240/ 如果無(wú)法訪問(wèn)請(qǐng)關(guān)閉系統(tǒng)防火墻

查看密碼的方式有2種,第一種是在服務(wù)器的容器中查看,第二種是在映射本地查看(前提是你映射了本地目錄)

好了,到這里就已經(jīng)安裝好jenkins了

容器中查看密碼:cat /var/jenkins_home/secrets/initialAdminPassword
映射本地目錄:cat /Users/songpeilun/jenkins_home/secrets/initialAdminPassword
#/Users/songpeilun/jenkins_home  本地映射目錄地址

三、方法2:新建本地節(jié)點(diǎn)  

  說(shuō)一下方法2的具體邏輯,主要是新建jenkins的本地節(jié)點(diǎn) 利用新的節(jié)點(diǎn)將git上的代碼拉取到本地(宿主機(jī))上去執(zhí)行代碼

  該方法主要適用于 本地已經(jīng)有一套python3的一套環(huán)境,可以直接運(yùn)行自動(dòng)化 利用本地持續(xù)集成實(shí)現(xiàn)每日自動(dòng)化報(bào)告(缺點(diǎn):因?yàn)槔玫氖潜镜毓?jié)點(diǎn) 利用宿主機(jī)地址當(dāng)作ip 所以每次都需要開啟電腦和jenkins地址 且外網(wǎng)不能訪問(wèn) 局限性小)

 第一步:在jenkins當(dāng)中安裝SSH Agent插件

  安裝 ssh Agent插件 系統(tǒng)設(shè)置—插件管理—可選插件 然后輸入ssh agent 搜索

 第二步新增節(jié)點(diǎn)

 系統(tǒng)設(shè)置—節(jié)點(diǎn)管理—新建節(jié)點(diǎn)(節(jié)點(diǎn)名稱不能重復(fù))

說(shuō)明:

  節(jié)點(diǎn)名稱:名稱盡量用英文和字符不要用漢字(創(chuàng)建項(xiàng)目的時(shí)候選擇節(jié)點(diǎn)會(huì)有警告?。?/p>

  節(jié)點(diǎn)描述:可填寫可不填寫

  執(zhí)行器數(shù)量:節(jié)點(diǎn)同時(shí)運(yùn)行的數(shù)量

  遠(yuǎn)程工作目錄:本機(jī)的工作目錄(/Users/songpeilun/jenkins)這需要有root權(quán)限的用戶對(duì)此文件所有權(quán)限

  標(biāo)簽:可填寫可不填寫

  用法:盡可能對(duì)使用這個(gè)節(jié)點(diǎn)

  啟動(dòng)方式:Launch agents via SSH

  主機(jī):本機(jī)的網(wǎng)絡(luò)ip地址(網(wǎng)絡(luò)-網(wǎng)絡(luò)設(shè)置-IP)

  Credentials:選擇已添加的本機(jī)賬號(hào)密碼

  Host Key Verification Strategy:Non verifying Veriflication Strategy

  可用性:盡量保持代理在線

  節(jié)點(diǎn)屬性--git:git的安裝路徑

 然后啟動(dòng)節(jié)點(diǎn) 下面就表示啟動(dòng)成功,然后查看本地宿主機(jī) 目錄文件夾夾是否有節(jié)點(diǎn)的文件

三、方法3:容器中安裝python3環(huán)境

  說(shuō)一下方法3的具體邏輯,主要是在容器中運(yùn)行代碼,git將代碼默認(rèn)拉取到容器當(dāng)中 不需要映射直接在容器中執(zhí)行代碼(好處:不占用服務(wù)器的資源大小,隨時(shí)啟動(dòng);不需要本地啟動(dòng)服務(wù) 直接利用服務(wù)器地址就行 壞處:安裝麻煩一點(diǎn)😈 )

  第一步:需要進(jìn)入jenkins容器當(dāng)中  

docker exec -itu root 容器id /bin/sh

 下面有2種方法安裝 python3

  1.weget 安裝(不推薦,基本和現(xiàn)安裝的方法差不多,先要安裝一些依賴包,如 gcc 等)

  2.apk add 安裝(此版本是alpine :apk add,能夠快速安裝完成)

 最后注意系統(tǒng)版本問(wèn)題:

  如果是 centos 那即是 yum ; 如果是 ubuntu 那即是 apt-get ;如果是 alpine 那即是 apk

  第二步:apk進(jìn)行安裝python3

cd /etc/apk/
echo "https://mirrors.ustc.edu.cn/alpine/v3.6/main/" > repositories
echo "https://mirrors.ustc.edu.cn/alpine/v3.6/community/" >> repositories

  更新apk源 這樣下載的比較快

apk update

  第三步:使用apk add 安裝python3環(huán)境

apk add python3

  第四步:更新pip3

pip3 install --upgrade pip

驗(yàn)證python環(huán)境
python -V
Pip3 -V

 上面安裝成功后 就可以安裝第三方庫(kù)的插件了,已經(jīng)完成一半了

 插件安裝 根據(jù)自己項(xiàng)目需要安裝 下面就以我的項(xiàng)目為列

  第五步:安裝python 三方庫(kù)

  首先創(chuàng)建requirements.txt 文件  

  pip freeze > requirements.txt

  pip install -r requirements.txt

  然后使用 vi requirements.txt 打開文件進(jìn)行編輯

base64-test0926 ==1.0.0
        PyMySQL==1.0.2
        pytest==6.2.3
        python-jenkins==1.7.0
        PyYAML==5.4.1
        redis==3.5.3
        requests==2.25.1
        SQLAlchemy==1.4.10
        urllib3==1.26.4
        wheel==0.36.2
        allure-pytest==2.8.40
        allure-python-commons==2.8.40

最后2個(gè)需要將Allure報(bào)告配置完成后在進(jìn)行安裝,不然會(huì)報(bào)錯(cuò)

⚠️ 如果安裝出錯(cuò) 不要著急 慢慢找出原因 我之前出錯(cuò)后 找了半天原因 是因?yàn)槿鄙賕reenlet 插件 (后面在為大家 提供方法)

  如果沒(méi)有問(wèn)題 到這里就已經(jīng)安裝成功了,可以將自己的代碼cp 到容器當(dāng)中 測(cè)試一下。沒(méi)有問(wèn)題后就可以打包鏡像了

本地文件拷貝到容器xx目錄當(dāng)中

docker cp /Users/songpeilun/python_data/allure-2.13.0.zip jenkint_test:/xx目錄

  我這里使用了Allure報(bào)告 所以要安裝

  第六步:安裝allure報(bào)告

  allure是一個(gè)解壓包,這里為大家提供一個(gè),下載后拷貝到容器當(dāng)中 解壓

  鏈接: https://pan.baidu.com/s/1JbBXOfA0j6saZh7H8RMipw 密碼: qfnv

#容器中解壓文件
unzip allure-2.13.0.zip

#配置環(huán)境變量
vi /etc/profile
PATH后面添加 :$PATH:/allure-2.13.0/bin(allure的全路徑)
source /etc/profile  保存生效

  第七步:驗(yàn)證allure

allure --version

四、打包/上傳鏡像

  關(guān)注 持續(xù)更新...

五、配置jenkins環(huán)境

到此這篇關(guān)于使用Docker+jenkins+python3環(huán)境搭建超詳細(xì)教程的文章就介紹到這了,更多相關(guān)Docker+jenkins+python3環(huán)境內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Docker無(wú)法stop或者rm指定容器問(wèn)題解決方案

    Docker無(wú)法stop或者rm指定容器問(wèn)題解決方案

    這篇文章主要介紹了Docker無(wú)法stop或者rm指定容器問(wèn)題解決方案,本文給大家介紹的非常詳細(xì),感興趣的朋友跟隨小編一起看看吧
    2024-06-06
  • 從零開始使用Dapr簡(jiǎn)化微服務(wù)的示例

    從零開始使用Dapr簡(jiǎn)化微服務(wù)的示例

    本文以net6和dapr1.5為基礎(chǔ),搭建一個(gè)dapr的簡(jiǎn)單使用示例。對(duì)Dapr簡(jiǎn)化微服務(wù)的簡(jiǎn)單使用感興趣的朋友跟隨小編一起學(xué)習(xí)下吧
    2021-11-11
  • Docker中運(yùn)行PostgreSQL并推薦幾款連接工具

    Docker中運(yùn)行PostgreSQL并推薦幾款連接工具

    PostgreSQL支持大部分的SQL標(biāo)準(zhǔn)并且提供了很多其他現(xiàn)代特性,如復(fù)雜查詢、外鍵、觸發(fā)器、視圖、事務(wù)完整性、多版本并發(fā)控制等,今天給大家介紹Docker中運(yùn)行PostgreSQL并推薦幾款連接工具,需要的朋友參考下吧
    2021-06-06
  • Docker部署Tomcat的示例代碼

    Docker部署Tomcat的示例代碼

    本文主要介紹了Docker部署Tomcat的示例代碼,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2023-07-07
  • pod調(diào)度將 Pod 指派給節(jié)點(diǎn)

    pod調(diào)度將 Pod 指派給節(jié)點(diǎn)

    這篇文章主要為大家介紹了pod調(diào)度將Pod指派給節(jié)點(diǎn) 示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-11-11
  • 詳解Docker之Compose服務(wù)編排

    詳解Docker之Compose服務(wù)編排

    Compose是Docker的服務(wù)編排工具,主要用來(lái)構(gòu)建基于Docker的復(fù)雜應(yīng)用,Compose 通過(guò)一個(gè)配置文件來(lái)管理多個(gè)Docker容器,非常適合組合使用多個(gè)容器進(jìn)行開發(fā)的場(chǎng)景。興趣的小伙伴們可以參考一下
    2018-07-07
  • docker網(wǎng)絡(luò)雙向連接詳解

    docker網(wǎng)絡(luò)雙向連接詳解

    在本篇文章里小編給大家分享的是一篇關(guān)于docker網(wǎng)絡(luò)雙向連接知識(shí)點(diǎn)詳解內(nèi)容,有興趣朋友們可以參考學(xué)習(xí)下。
    2020-01-01
  • Docker容器時(shí)區(qū)調(diào)整操作

    Docker容器時(shí)區(qū)調(diào)整操作

    這篇文章主要介紹了Docker容器時(shí)區(qū)調(diào)整操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-11-11
  • Docker搭建部署Node項(xiàng)目的方法步驟

    Docker搭建部署Node項(xiàng)目的方法步驟

    本文主要介紹了Docker搭建部署Node項(xiàng)目的方法步驟,文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-07-07
  • docker-compose統(tǒng)一管理多個(gè)容器使用詳解

    docker-compose統(tǒng)一管理多個(gè)容器使用詳解

    這篇文章主要為大家介紹了docker-compose統(tǒng)一管理多個(gè)容器使用詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-02-02

最新評(píng)論