电脑知识|欧美黑人一区二区三区|软件|欧美黑人一级爽快片淫片高清|系统|欧美黑人狂野猛交老妇|数据库|服务器|编程开发|网络运营|知识问答|技术教程文章 - 好吧啦网

您的位置:首頁技術文章
文章詳情頁

使用Docker+jenkins+python3環境搭建超詳細教程

瀏覽:2日期:2022-07-28 16:18:38
前言:

自動化寫好后需要在服務器上每日定時運行遇到,這樣的一個問題,Jenkins容器是在docker中安裝的 ,然后從git上拉取代碼 發現代碼在jenkins容器的目錄當中,運行的時候提示沒有安裝python環境還第三方庫。

解決方法有3種:

第一種:啟動jenkins容器時 將容器的目錄掛載到宿主機目錄上去執行(方法不能實現)Pass

第二種:在jenkins上創建本地節點,將代碼拉取到本地 然后去運行本地項目(在本機上使用比較方便,但是局限性比較?。?/p>

第三種:重新封裝jenkins鏡像,在jenkins鏡像中安裝python3的環境 在容器中執行項目(步驟麻煩,但后續永久使用)

第一種方法和第二種方法前提都需要在服務器中安裝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.啟動下載的鏡像 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 #說明:docker run 運行-d:后臺運行容器-p:指定容器的端口映射 -p 10240:8080 表示將容器的8080端口映射到宿主機的10240端口上 ,映射多個端口使用 -p 8082:8080 -p 8083:8081 -v:掛載宿主機目錄和 docker容器中的目錄 /Users/songpeilun/jenkins_home 本地宿主機絕對目錄;/var/jenkins_home 容器目錄(將容器目錄掛載到本地) -v:/etc/localtime:/etc/localtime 本地時間和容器時間同步 -e JAVA_OPTS=-Duser.timezone=Asia/Shanghai 設置容器時間為上海時間(不然容器時間和本地時間相差8小時) --name jenkint_test 設置容器的名稱 jenkinsci/blueocean選擇鏡像名稱啟動容器(默認鏡像后面會加latest 如果拉取自己創建的鏡像后面要加自己的版本號 jenkinsci/blueocean:版本號TAG ) ⚠️ 容器目錄掛載本地目錄時 一定要給本地文件夾賦予權限 chmod 777 jenkins_home

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

docker images

使用Docker+jenkins+python3環境搭建超詳細教程

查看容器是否運行

docker ps

可以看出docker中已經有運行的容器jenkins

使用Docker+jenkins+python3環境搭建超詳細教程

這樣就說明 已經安裝好jenkins 現在就可以啟動jenkins了

三、啟動jenkins

瀏覽器輸入 服務器的ip+端口號 http://47.99.98.250:10240/ 如果無法訪問請關閉系統防火墻

使用Docker+jenkins+python3環境搭建超詳細教程

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

好了,到這里就已經安裝好jenkins了

容器中查看密碼:cat /var/jenkins_home/secrets/initialAdminPassword映射本地目錄:cat /Users/songpeilun/jenkins_home/secrets/initialAdminPassword#/Users/songpeilun/jenkins_home 本地映射目錄地址三、方法2:新建本地節點

說一下方法2的具體邏輯,主要是新建jenkins的本地節點 利用新的節點將git上的代碼拉取到本地(宿主機)上去執行代碼

該方法主要適用于 本地已經有一套python3的一套環境,可以直接運行自動化 利用本地持續集成實現每日自動化報告(缺點:因為利用的是本地節點 利用宿主機地址當作ip 所以每次都需要開啟電腦和jenkins地址 且外網不能訪問 局限性小)

 第一步:在jenkins當中安裝SSH Agent插件

安裝 ssh Agent插件 系統設置—插件管理—可選插件 然后輸入ssh agent 搜索

使用Docker+jenkins+python3環境搭建超詳細教程

 第二步新增節點

 系統設置—節點管理—新建節點(節點名稱不能重復)

使用Docker+jenkins+python3環境搭建超詳細教程

使用Docker+jenkins+python3環境搭建超詳細教程

說明:

節點名稱:名稱盡量用英文和字符不要用漢字(創建項目的時候選擇節點會有警告?。?/p>

節點描述:可填寫可不填寫

執行器數量:節點同時運行的數量

遠程工作目錄:本機的工作目錄(/Users/songpeilun/jenkins)這需要有root權限的用戶對此文件所有權限

標簽:可填寫可不填寫

用法:盡可能對使用這個節點

啟動方式:Launch agents via SSH

主機:本機的網絡ip地址(網絡-網絡設置-IP)

Credentials:選擇已添加的本機賬號密碼

Host Key Verification Strategy:Non verifying Veriflication Strategy

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

節點屬性--git:git的安裝路徑

使用Docker+jenkins+python3環境搭建超詳細教程

 然后啟動節點 下面就表示啟動成功,然后查看本地宿主機 目錄文件夾夾是否有節點的文件

使用Docker+jenkins+python3環境搭建超詳細教程

使用Docker+jenkins+python3環境搭建超詳細教程

三、方法3:容器中安裝python3環境

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

第一步:需要進入jenkins容器當中

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

 下面有2種方法安裝 python3

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

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

 最后注意系統版本問題:

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

第二步:apk進行安裝python3

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

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

apk update

使用Docker+jenkins+python3環境搭建超詳細教程

第三步:使用apk add 安裝python3環境

apk add python3

使用Docker+jenkins+python3環境搭建超詳細教程

第四步:更新pip3

pip3 install --upgrade pip驗證python環境python -VPip3 -V

 上面安裝成功后 就可以安裝第三方庫的插件了,已經完成一半了

 插件安裝 根據自己項目需要安裝 下面就以我的項目為列

第五步:安裝python 三方庫

首先創建requirements.txt 文件

pip freeze > requirements.txt

pip install -r requirements.txt

然后使用 vi requirements.txt 打開文件進行編輯

base64-test0926 ==1.0.0PyMySQL==1.0.2pytest==6.2.3python-jenkins==1.7.0PyYAML==5.4.1redis==3.5.3requests==2.25.1SQLAlchemy==1.4.10urllib3==1.26.4wheel==0.36.2allure-pytest==2.8.40allure-python-commons==2.8.40最后2個需要將Allure報告配置完成后在進行安裝,不然會報錯

⚠️ 如果安裝出錯 不要著急 慢慢找出原因 我之前出錯后 找了半天原因 是因為缺少greenlet 插件 (后面在為大家 提供方法)

使用Docker+jenkins+python3環境搭建超詳細教程

如果沒有問題 到這里就已經安裝成功了,可以將自己的代碼cp 到容器當中 測試一下。沒有問題后就可以打包鏡像了

本地文件拷貝到容器xx目錄當中

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

我這里使用了Allure報告 所以要安裝

第六步:安裝allure報告

allure是一個解壓包,這里為大家提供一個,下載后拷貝到容器當中 解壓

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

#容器中解壓文件unzip allure-2.13.0.zip#配置環境變量vi /etc/profilePATH后面添加 :$PATH:/allure-2.13.0/bin(allure的全路徑)source /etc/profile 保存生效

第七步:驗證allure

allure --version四、打包/上傳鏡像

關注 持續更新...

五、配置jenkins環境

到此這篇關于使用Docker+jenkins+python3環境搭建超詳細教程的文章就介紹到這了,更多相關Docker+jenkins+python3環境內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!

標簽: Python 編程
相關文章:
主站蜘蛛池模板: 长沙发电机-湖南发电机-柴油发电机供应厂家-长沙明邦智能科技 | 品牌策划-品牌设计-济南之式传媒广告有限公司官网-提供品牌整合丨影视创意丨公关活动丨数字营销丨自媒体运营丨数字营销 | 济南展厅设计施工_数字化展厅策划设计施工公司_山东锐尚文化传播有限公司 | DDoS安全防护官网-领先的DDoS安全防护服务商 | 德州网站制作 - 网站建设设计 - seo排名优化 -「两山建站」 | LED灯杆屏_LED广告机_户外LED广告机_智慧灯杆_智慧路灯-太龙智显科技(深圳)有限公司 | 吸污车_吸粪车_抽粪车_电动三轮吸粪车_真空吸污车_高压清洗吸污车-远大汽车制造有限公司 | 天津试验仪器-电液伺服万能材料试验机,恒温恒湿标准养护箱,水泥恒应力压力试验机-天津鑫高伟业科技有限公司 | 细沙回收机-尾矿干排脱水筛设备-泥石分离机-建筑垃圾分拣机厂家-青州冠诚重工机械有限公司 | 生物风-销售载体,基因,质粒,ATCC细胞,ATCC菌株等,欢迎购买-百风生物 | 聚氨酯催化剂K15,延迟催化剂SA-1,叔胺延迟催化剂,DBU,二甲基哌嗪,催化剂TMR-2,-聚氨酯催化剂生产厂家 | 【德信自动化】点胶机_全自动点胶机_自动点胶机厂家_塑料热压机_自动螺丝机-深圳市德信自动化设备有限公司 | RTO换向阀_VOC高温阀门_加热炉切断阀_双偏心软密封蝶阀_煤气蝶阀_提升阀-湖北霍科德阀门有限公司 | 赛默飞Thermo veritiproPCR仪|ProFlex3 x 32PCR系统|Countess3细胞计数仪|371|3111二氧化碳培养箱|Mirco17R|Mirco21R离心机|仟诺生物 | 家德利门业,家居安全门,别墅大门 - 安徽家德利门业有限公司 | 懂研帝_专业SCI论文润色机构_SCI投稿发表服务公司 | 济南拼接屏_山东液晶拼接屏_济南LED显示屏—维康国际官网 | 底部填充胶_电子封装胶_芯片封装胶_芯片底部填充胶厂家-东莞汉思新材料 | 高尔夫球杆_高尔夫果岭_高尔夫用品-深圳市新高品体育用品有限公司 | 云南外加剂,云南速凝剂,云南外加剂代加工-普洱澜湄新材料科技有限公司 | 深圳宣传片制作_产品视频制作_深圳3D动画制作公司_深圳短视频拍摄-深圳市西典映画传媒有限公司 | 洛阳网站建设_洛阳网站优化_网站建设平台_洛阳香河网络科技有限公司 | 北京软件开发_软件开发公司_北京软件公司-北京宜天信达软件开发公司 | 世界箱包品牌十大排名,女包小众轻奢品牌推荐200元左右,男包十大奢侈品牌排行榜双肩,学生拉杆箱什么品牌好质量好 - Gouwu3.com | 环压强度试验机-拉链拉力试验机-上海倾技仪器仪表科技有限公司 | 广州云仓代发-昊哥云仓专业电商仓储托管外包代发货服务 | 沈阳庭院景观设计_私家花园_别墅庭院设计_阳台楼顶花园设计施工公司-【沈阳现代时园艺景观工程有限公司】 | 清水混凝土修复_混凝土色差修复剂_混凝土色差调整剂_清水混凝土色差修复_河南天工 | 电磁铁_小型推拉电磁铁_电磁阀厂家-深圳市宗泰电机有限公司 | Magnescale探规,Magnescale磁栅尺,Magnescale传感器,Magnescale测厚仪,Mitutoyo光栅尺,笔式位移传感器-苏州连达精密量仪有限公司 | 欧版反击式破碎机-欧版反击破-矿山石料破碎生产线-青州奥凯诺机械 | 春腾云财 - 为企业提供专业财税咨询、代理记账服务 | 武汉高温老化房,恒温恒湿试验箱,冷热冲击试验箱-武汉安德信检测设备有限公司 | 国标白水泥,高标号白水泥,白水泥厂家-淄博华雪建材有限公司 | 短信通106短信接口验证码接口群发平台_国际短信接口验证码接口群发平台-速度网络有限公司 | 不干胶标签-不干胶贴纸-不干胶标签定制-不干胶标签印刷厂-弗雷曼纸业(苏州)有限公司 | 机房监控|动环监控|动力环境监控系统方案产品定制厂家 - 迈世OMARA | 标准光源箱|对色灯箱|色差仪|光泽度仪|涂层测厚仪_HRC大品牌生产厂家 | 浇钢砖,流钢砖_厂家价低-淄博恒森耐火材料有限公司 | 硫酸钡厂家_高光沉淀硫酸钡价格-河南钡丰化工有限公司 | 济南拼接屏_山东液晶拼接屏_济南LED显示屏—维康国际官网 |