国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

jenkins的安裝和配置(flask結(jié)合jenkins半自動(dòng)化部署流程)

這篇具有很好參考價(jià)值的文章主要介紹了jenkins的安裝和配置(flask結(jié)合jenkins半自動(dòng)化部署流程)。希望對大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

jenkins在虛擬機(jī)中安裝

1.1 背景介紹

Jenkins 是一款流行的開源持續(xù)集成(Continuous Integration)工具,廣泛用于項(xiàng)目開發(fā),具有自動(dòng)化構(gòu)建、測試和部署等功能。
Jenkins官網(wǎng): http://jenkins-ci.org/

Jenkins 特征

  • 開源的Java語言開發(fā)持續(xù)集成工具,支持持續(xù)集成,持續(xù)部署。
  • 易于安裝部署配置:可通過yum安裝,或下載war包以及通過docker容器等快速實(shí)現(xiàn)安裝部署,可方便web界面配置管理。
  • 消息通知及測試報(bào)告:集成RSS/E-mail通過RSS發(fā)布構(gòu)建結(jié)果或當(dāng)構(gòu)建完成時(shí)通過e-mail通知,生成JUnit/TestNG測試報(bào)告。
  • 分布式構(gòu)建:支持Jenkins能夠讓多臺(tái)計(jì)算機(jī)一起構(gòu)建/測試。
  • 文件識(shí)別:Jenkins能夠跟蹤哪次構(gòu)建生成哪些jar,哪次構(gòu)建使用哪個(gè)版本的jar等。
  • 豐富的插件支持:支持?jǐn)U展插件,你可以開發(fā)適合自己團(tuán)隊(duì)使用的工具,如git,svn,maven,docker等。

1.2 安裝

jenkins的安裝和配置(flask結(jié)合jenkins半自動(dòng)化部署流程)

普通虛擬機(jī)安裝參考: https://www.jianshu.com/p/400b4516b98e

docker化安裝參考: https://developer.aliyun.com/article/892646

1.3 使用

首先我們想實(shí)現(xiàn)的是flask一個(gè)后端服務(wù)的自動(dòng)化部署, 我的后端服務(wù)是部署在docker上的, 所以要先知道docker的一些簡單命令, 我這里就不細(xì)說了. 直接開用

flask 服務(wù) app.py 代碼如下

from flask import Flask, jsonify

app = Flask(__name__)


@app.route('/')
def hello_world():
  return 'Hello, World!'


@app.route('/health')
def health_checking():
  ret = {'status': 'UP'}
  return jsonify(ret)


@app.route('/hello')
def hello_chen():
  return 'Hello, chen!'


@app.route('/index')
def index():
  return 'Index!'

@app.route('/ckk')
def ckk():
  return 'Chenkeke'

DockerFile 文件如下, 意思就是用 gunicorn 啟動(dòng)flask 的 app 然后用5001端口進(jìn)行訪問

FROM python:3.8

RUN pip install --no-cache-dir -i http://mirrors.aliyun.com/pypi/simple/ \
--trusted-host mirrors.aliyun.com Flask gunicorn

ADD . /app

ENV GUNICORN_CMD_ARGS="--bind=0.0.0.0:5001 --chdir=./app/ --workers=4"

CMD ["gunicorn", "app:app"]

這兩個(gè)文件配置好之后, 需要上傳到gitlab上面, 如圖

jenkins的安裝和配置(flask結(jié)合jenkins半自動(dòng)化部署流程)

配置好服務(wù)器的ssh在gitlab上面, 這樣可以直接通過ssh拉取(不過不配也沒關(guān)系, 我是通過http拉的項(xiàng)目)

jenkins的安裝和配置(flask結(jié)合jenkins半自動(dòng)化部署流程)

配完之后可以試試能不能在服務(wù)器上把項(xiàng)目拉取下來, 然后通過DockDile起個(gè)任務(wù)看看能不能成功運(yùn)行這個(gè)項(xiàng)目, 直接進(jìn)到拉取的文件下編譯(注意是同一層)

docker build -t your_image_name .

jenkins的安裝和配置(flask結(jié)合jenkins半自動(dòng)化部署流程)

成功之后會(huì)生成一個(gè)鏡像, 然后執(zhí)行鏡像

docker run -d --name test -p 5001:5001 your_image_name

jenkins的安裝和配置(flask結(jié)合jenkins半自動(dòng)化部署流程)

打開網(wǎng)頁看看, 成功執(zhí)行

jenkins的安裝和配置(flask結(jié)合jenkins半自動(dòng)化部署流程)

關(guān)閉容器,且刪除這個(gè)鏡像, 不然后面的時(shí)候會(huì)報(bào)錯(cuò)

jenkins的安裝和配置(flask結(jié)合jenkins半自動(dòng)化部署流程)

可以了的話就進(jìn)行下一步配置Jenkins, Jenkins的端口安裝好了之后默認(rèn)是8080, 可以先觀察一下界面熟悉一下. 沒問題之后,我們點(diǎn)擊新建一個(gè)工作流

jenkins的安裝和配置(flask結(jié)合jenkins半自動(dòng)化部署流程)

jenkins的安裝和配置(flask結(jié)合jenkins半自動(dòng)化部署流程)

  1. 配置gitlab的賬號(hào)密碼, 拉取代碼的倉庫

jenkins的安裝和配置(flask結(jié)合jenkins半自動(dòng)化部署流程)

jenkins的安裝和配置(flask結(jié)合jenkins半自動(dòng)化部署流程)

  1. 選擇構(gòu)建后操作,執(zhí)行shell

jenkins的安裝和配置(flask結(jié)合jenkins半自動(dòng)化部署流程)

jenkins的安裝和配置(flask結(jié)合jenkins半自動(dòng)化部署流程)

執(zhí)行shell的步驟, 可以自行百度意思

#!/bin/bash
echo "hello chen"
# 關(guān)閉docker項(xiàng)目
IMAGE_NAME="company_flask"
CONTAINER_NAME="my_container"
PORT_MAPPING="5001:5001"
WORKSPACE_PATH="/var/lib/jenkins/workspace/demo"
# 檢查容器是否已經(jīng)在運(yùn)行中
if [ "$(docker ps -q -f name=$CONTAINER_NAME)" ]; then
    echo "Stopping existing $CONTAINER_NAME container..."
    docker stop $CONTAINER_NAME
fi

# 檢查是否存在名為 $IMAGE_NAME 的 Docker 鏡像
if docker images | awk '{print $1}' | grep -q "^$IMAGE_NAME$"; then
    # 如果存在,則刪除該鏡像
    echo "Deleting existing $IMAGE_NAME image..."
    docker rmi $IMAGE_NAME
fi

# 檢查是否存在名為 $CONTAINER_NAME 的 Docker 容器
if docker ps -a | awk '{print $NF}' | grep -q "^$CONTAINER_NAME$"; then
    # 如果存在,則刪除該容器
    echo "Deleting existing $CONTAINER_NAME container..."
    docker rm $CONTAINER_NAME
fi

# 進(jìn)入工作目錄并構(gòu)建新的 Docker 鏡像
cd $WORKSPACE_PATH
docker build -t $IMAGE_NAME .

# 啟動(dòng)新的 Docker 容器
echo "Starting new $CONTAINER_NAME container..."
docker run -d --name $CONTAINER_NAME -p $PORT_MAPPING $IMAGE_NAME

然后點(diǎn)擊保存, 這時(shí)候就應(yīng)該開始構(gòu)建了, 查看構(gòu)建的歷史

jenkins的安裝和配置(flask結(jié)合jenkins半自動(dòng)化部署流程)

查看控制臺(tái)輸出

jenkins的安裝和配置(flask結(jié)合jenkins半自動(dòng)化部署流程)

成功。然后在本文編輯文件中新增一個(gè)接口并推送到遠(yuǎn)端git, 然后重新構(gòu)建看一下。

上傳code

jenkins的安裝和配置(flask結(jié)合jenkins半自動(dòng)化部署流程)

jenkins的安裝和配置(flask結(jié)合jenkins半自動(dòng)化部署流程)

看看git有沒有上傳成功

jenkins的安裝和配置(flask結(jié)合jenkins半自動(dòng)化部署流程)

然后登錄jenkins 重新構(gòu)建鏡像

jenkins的安裝和配置(flask結(jié)合jenkins半自動(dòng)化部署流程)

查看構(gòu)建歷史

jenkins的安裝和配置(flask結(jié)合jenkins半自動(dòng)化部署流程)

選擇最近的一次構(gòu)建

jenkins的安裝和配置(flask結(jié)合jenkins半自動(dòng)化部署流程)

查看控制臺(tái)輸出,可以看到已經(jīng)將最新的代碼拉取下來了

jenkins的安裝和配置(flask結(jié)合jenkins半自動(dòng)化部署流程)

看看能不能訪問到接口

jenkins的安裝和配置(flask結(jié)合jenkins半自動(dòng)化部署流程)

也是成功的?,F(xiàn)在已經(jīng)可以使用自動(dòng)部署了,但是是半自動(dòng)部署的.因?yàn)檫€需要登錄jenkins然后手動(dòng)構(gòu)建 目前還是不完善的.
因?yàn)閖enkins是本地的 git用的是網(wǎng)上的gitlab 所以不能形成一個(gè)閉環(huán). 所以下一次博客會(huì)將gitlab和jenkins都用docker部署起來.然后完成一個(gè)全自動(dòng)的自動(dòng)化部署.文章來源地址http://www.zghlxwxcb.cn/news/detail-438799.html

到了這里,關(guān)于jenkins的安裝和配置(flask結(jié)合jenkins半自動(dòng)化部署流程)的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 基于vcs+uvm+xilinx ip的仿真平臺(tái)的半自動(dòng)化搭建

    基于vcs+uvm+xilinx ip的仿真平臺(tái)的半自動(dòng)化搭建

    系 統(tǒng):ubuntu 18.04 仿真平臺(tái):vcs_2018.09-SP2 開發(fā)平臺(tái):vivado 2019.2 本文的主要目的是自動(dòng)化搭建基于vcs+uvm+xilinx ip的仿真平臺(tái),節(jié)省平臺(tái)搭建的時(shí)間與精力。 拿到一個(gè)項(xiàng)目,一般的平臺(tái)搭建的步驟:去網(wǎng)上找一個(gè)makefile腳本(或者使用原項(xiàng)目腳本),修改相應(yīng)的軟件路徑,添加

    2024年01月18日
    瀏覽(19)
  • 69、Spring Data JPA 的 @Query查詢 和 命名查詢(半自動(dòng):提供 SQL 或 JPQL 查詢)

    69、Spring Data JPA 的 @Query查詢 和 命名查詢(半自動(dòng):提供 SQL 或 JPQL 查詢)

    1、方法名查詢(全自動(dòng),既不需要提供sql語句,也不需要提供方法體) 2、@Query查詢(半自動(dòng):提供 SQL 或 JPQL 查詢) 3、自定義查詢(全手動(dòng)) @Query查詢 和 命名查詢的區(qū)別: 命名查詢與直接用@Query來定義查詢的本質(zhì)是一樣,只不過它們定義SQL或JPQL語句的位置不同。

    2024年02月07日
    瀏覽(19)
  • jenkins結(jié)合docker實(shí)現(xiàn)自動(dòng)部署

    jenkins結(jié)合docker實(shí)現(xiàn)自動(dòng)部署

    使用虛擬機(jī)搭建環(huán)境,centos7.8系統(tǒng) 主機(jī) 說明 必要軟件 192.168.8.110 jenkins服務(wù)節(jié)點(diǎn) jekins,jdk8,tomcat9 192.168.8.101 harbor服務(wù),docker管理鏡像 harbor 192.168.8.111 jenkins工作節(jié)點(diǎn) maven,jdk8,git,docker rpm方式安裝 war方式安裝 jenkins官方下載地址 選擇合適的版本,注意各個(gè)版本依賴的jdk版本,如

    2024年02月06日
    瀏覽(16)
  • Jenkins結(jié)合gitee自動(dòng)化部署SpringBoot項(xiàng)目

    Jenkins結(jié)合gitee自動(dòng)化部署SpringBoot項(xiàng)目

    安裝教程 Gitee Plugin 源碼管理 填寫源碼地址 注意: 請確保genkins所在的服務(wù)器有權(quán)限git拉取遠(yuǎn)程倉庫代碼,如果不可以請參考ssh配置 centos 配置ssh拉取遠(yuǎn)程git代碼 源碼管理 構(gòu)建觸發(fā)器 1.勾選Gitee webhook 觸發(fā)構(gòu)建 2.生成webhook密碼 構(gòu)建觸發(fā)器 ? 3.在gitee項(xiàng)目管理中配置webhook git

    2024年02月08日
    瀏覽(38)
  • 【運(yùn)維篇】基于docker,jenkins結(jié)合gitlab做自動(dòng)部署

    【運(yùn)維篇】基于docker,jenkins結(jié)合gitlab做自動(dòng)部署

    我的環(huán)境是windows系統(tǒng),使用Docker Desktop制作了gitlab容器和jenkins容器,也可以在虛擬機(jī)上使用docker。 gitlab有鏡像我們直接使用即可,jenkins鏡像有一些環(huán)境沒有,我們在它的基礎(chǔ)上添加一些環(huán)境。 需要準(zhǔn)備的文件比較多,我百度網(wǎng)盤共享一下。 鏈接:https://pan.baidu.com/s/1K7FD-ngQ

    2024年01月16日
    瀏覽(39)
  • 【運(yùn)維知識(shí)高級(jí)篇】超詳細(xì)的Jenkins教程1(安裝部署+配置插件+創(chuàng)建自由風(fēng)格項(xiàng)目+配合gitlab實(shí)現(xiàn)Jenkins自動(dòng)觸發(fā))

    【運(yùn)維知識(shí)高級(jí)篇】超詳細(xì)的Jenkins教程1(安裝部署+配置插件+創(chuàng)建自由風(fēng)格項(xiàng)目+配合gitlab實(shí)現(xiàn)Jenkins自動(dòng)觸發(fā))

    Jenkins是一個(gè)開源軟件項(xiàng)目,是基于Java開發(fā)的一種持續(xù)集成的工具,用于監(jiān)控持續(xù)重復(fù)的工作,?旨在提供一個(gè)開放易用的平臺(tái),使軟件的持續(xù)集成變成可能,是持續(xù)集成的核心,可以與其他軟件進(jìn)行協(xié)作,例如,gitlab推送給測試環(huán)境代碼,可以通過Jenkins省略步驟,實(shí)現(xiàn)自動(dòng)

    2024年02月05日
    瀏覽(40)
  • Jenkins自動(dòng)化部署簡單配置

    Jenkins自動(dòng)化部署簡單配置

    下載安裝jenkins 安裝Jenkins步驟 點(diǎn)擊Next的時(shí)候會(huì)有jdk版本跟Jenkins版本不符合的情況 1. 看下任務(wù)管理器內(nèi)Jenkins服務(wù)是否啟動(dòng),在瀏覽器里面輸入localhost:2023(端口號(hào)是安裝時(shí)輸入的) 2. 根據(jù)路徑找到放置密碼的文件(C:ProgramDataJenkins.jenkinssecretsinitialAdminPassword) 3. 自定義j

    2024年02月06日
    瀏覽(24)
  • Jenkins自動(dòng)化部署-Jenkins的安裝

    Jenkins自動(dòng)化部署-Jenkins的安裝

    首先我們需要安裝docker ?安裝 yum-utils包 yum install -y yum-utils ? ? ? ? ? ?device-mapper-persistent-data ? ? ? ? ? ?lvm2 --skip-broken ? ?設(shè)置鏡像地址 yum-config-manager ? ? --add-repo ? ? https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo ? ?? sed -i \\\'s/download.docker.com/mirrors.aliyun.com/do

    2024年02月10日
    瀏覽(22)
  • 【Jenkins+Gitlab自動(dòng)化部署配置】

    以下為整理當(dāng)初參照的博客 阿里云云服務(wù)器 ECS 手動(dòng)搭建GitLab避坑教程 博客文中的鏡像源地址已換 Gitlab忘記root用戶密碼的解決辦法 Gitlab學(xué)習(xí)筆記(一):基于Ubuntu的gitlab的私有服務(wù)搭建(超詳細(xì)) Jenkins 構(gòu)建報(bào)錯(cuò):Couldn‘t find any revision to build. Verify the repository and branch conf

    2024年02月21日
    瀏覽(50)
  • Jenkins入門(二)Jenkins安裝及自動(dòng)構(gòu)建部署

    Jenkins入門(二)Jenkins安裝及自動(dòng)構(gòu)建部署

    1. 機(jī)器要求: 256 MB 內(nèi)存,建議大于 512 MB 10 GB 的硬盤空間(用于 Jenkins 和 Docker 鏡像) 需要安裝以下軟件: Java 8 ( JRE 或者 JDK 都可以) 2.?安裝JDK 檢索可用包 安裝JRE 安裝JDK 3.將 jenkins.war 放到服務(wù)器中 jenkins.war下載地址(注意版本,我這里用的是):Jenkins 的安裝和設(shè)置 ?執(zhí)

    2024年02月03日
    瀏覽(18)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包