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

微服務(wù) & 云原生:基于 Gogs + Drone 實(shí)現(xiàn) CI/CD 自動(dòng)化

這篇具有很好參考價(jià)值的文章主要介紹了微服務(wù) & 云原生:基于 Gogs + Drone 實(shí)現(xiàn) CI/CD 自動(dòng)化。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問(wèn)。

一般構(gòu)建部署

以一個(gè)簡(jiǎn)單的前后端項(xiàng)目來(lái)說(shuō),分別編寫(xiě)前后端的 Dockerfile 文件并構(gòu)建鏡像,然后編寫(xiě) docker-compose.yml 構(gòu)建部署,啟動(dòng)運(yùn)行。每次代碼變更后都需重新手動(dòng)打包、構(gòu)建、推送。

一個(gè)簡(jiǎn)單的例子:

  • 前端:
    • 項(xiàng)目名:kubemanagement-web
    • 技術(shù)棧:Vue
  • 后端:
    • 項(xiàng)目名:kubemanagement
    • 技術(shù)棧:Golang

tips: 不同語(yǔ)言對(duì)應(yīng)的構(gòu)建邏輯編寫(xiě)不同。關(guān)于 Dockerfile 以及 docker-compose 如何編寫(xiě),請(qǐng)查閱官方文檔,此處不在贅述。

1. 編寫(xiě)前端 Dockerfile 文件:

#第一階段構(gòu)建
FROM node:16.13.2 as builder
WORKDIR /app/kubemanagement-web

COPY . .

RUN npm config set registry https://registry.npmmirror.com
RUN npm install

# 開(kāi)始構(gòu)建
RUN npm run build:prod

# 第二階段構(gòu)建
FROM nginx
COPY --from=builder /app/kubemanagement-web/dist/ /usr/share/nginx/html/
COPY --from=builder /app/kubemanagement-web/default.conf.template /etc/nginx/templates/default.conf.template
EXPOSE 80

2. 編寫(xiě)后端 Dockerfile 文件:

FROM golang:1.20-alpine3.16 as builder
WORKDIR /go/src/kubemanagement.com/server
COPY . .

RUN go env -w GO111MODULE=on \
   && go env -w GOPROXY=https://goproxy.cn,direct \
   && go env -w CGO_ENABLED=0 \
   && go env \
   && go mod tidy \
   && go build -o server .

FROM alpine:latest

LABEL MAINTAINER="zj20162325@163.com"

WORKDIR /go/src/kubemanagement.com/server
COPY --from=0 /go/src/kubemanagement.com/server/config.yaml ./config.yaml
COPY --from=0 /go/src/kubemanagement.com/server/.kube/config ./.kube/config
COPY --from=0 /go/src/kubemanagement.com/server/server ./
EXPOSE 8082
ENTRYPOINT ./server

3. 分別構(gòu)建鏡像:

  • 前端
docker build -t harbor.kubemanagement.com/kubemanagement/kubemanagement-web:v1.0 .
  • 后端
docker build -t harbor.kubemanagement.com/kubemanagement/kubemanagement:v1.0 .

結(jié)果如下:
微服務(wù) & 云原生:基于 Gogs + Drone 實(shí)現(xiàn) CI/CD 自動(dòng)化,云原生與微服務(wù),云原生,ci/cd,gogs,drone
如果需要推送鏡像,比如推送到私有 Harbor 倉(cāng)庫(kù),可執(zhí)行:

docker push harbor.kubemanagement.com/kubemanagement/kubemanagement-web:v1.0
docker push harbor.kubemanagement.com/kubemanagement/kubemanagement:v1.0

Harbor 的搭建可參考 微服務(wù) & 云原生:搭建 Harbor 私有鏡像倉(cāng)庫(kù)。

4. 編寫(xiě) docker-compose.yml 文件:

version: "3"

networks:
  network:
    ipam:
      driver: default
      config:
        - subnet: '177.7.0.0/16'

services:
  web:
    container_name: kubemanagement-web
    image: harbor.kubemanagement.com/kubemanagement/kubemanagement-web:v1.0
    restart: always
    environment:
      BACKEND_HOST: 'http://177.7.0.12:8082/'
    ports:
      - '8081:80'
    depends_on:
      - server
    networks:
      network:
        ipv4_address: 177.7.0.11

  server:
    container_name: kubemanagement-server
    image: harbor.kubemanagement.com/kubemanagement/kubemanagement:v1.0
    restart: always
    ports:
      - '8082:8082'
    networks:
      network:
        ipv4_address: 177.7.0.12

使用 docker-compose 自動(dòng)完成包括構(gòu)建鏡像,創(chuàng)建服務(wù),啟動(dòng)服務(wù),并關(guān)聯(lián)服務(wù)相關(guān)容器的一系列操作:

docker-compose up -d

結(jié)果如下:
微服務(wù) & 云原生:基于 Gogs + Drone 實(shí)現(xiàn) CI/CD 自動(dòng)化,云原生與微服務(wù),云原生,ci/cd,gogs,drone
此時(shí)通過(guò)相應(yīng) ip:port 即可訪(fǎng)問(wèn)頁(yè)面,示例頁(yè)面如下:
微服務(wù) & 云原生:基于 Gogs + Drone 實(shí)現(xiàn) CI/CD 自動(dòng)化,云原生與微服務(wù),云原生,ci/cd,gogs,drone

使用 Gogs & Drone 持續(xù)集成

微服務(wù) & 云原生:基于 Gogs + Drone 實(shí)現(xiàn) CI/CD 自動(dòng)化,云原生與微服務(wù),云原生,ci/cd,gogs,drone

Gogs

編寫(xiě) gogs 的 docker-compose.yml 文件

version: "3"

volumes:
  gogsdata:

services:
  gogs:
    container_name: gogs
    image: gogs/gogs:0.12.10
    volumes:
    - gogsdata:/data
    restart: always
    ports:
      - '10880:3000'

執(zhí)行:

docker-compose up -d

結(jié)果如下:
微服務(wù) & 云原生:基于 Gogs + Drone 實(shí)現(xiàn) CI/CD 自動(dòng)化,云原生與微服務(wù),云原生,ci/cd,gogs,drone
通過(guò) 10880 端口訪(fǎng)問(wèn):
微服務(wù) & 云原生:基于 Gogs + Drone 實(shí)現(xiàn) CI/CD 自動(dòng)化,云原生與微服務(wù),云原生,ci/cd,gogs,drone
數(shù)據(jù)庫(kù)根據(jù)需求來(lái)選,這里選擇最輕量級(jí)的 SQLite3 作為演示,其他配置項(xiàng)可以默認(rèn),由于編寫(xiě) docker-compose.yml 時(shí)做了端口映射,主要修改域名、端口號(hào),如下:
微服務(wù) & 云原生:基于 Gogs + Drone 實(shí)現(xiàn) CI/CD 自動(dòng)化,云原生與微服務(wù),云原生,ci/cd,gogs,drone
編寫(xiě)完可選配置后點(diǎn)擊立即安裝,我這里就簡(jiǎn)單設(shè)置管理員信息:
微服務(wù) & 云原生:基于 Gogs + Drone 實(shí)現(xiàn) CI/CD 自動(dòng)化,云原生與微服務(wù),云原生,ci/cd,gogs,drone
gogs 的使用與 git 基本一致,簡(jiǎn)單創(chuàng)建一個(gè)倉(cāng)庫(kù)并提交信息:
微服務(wù) & 云原生:基于 Gogs + Drone 實(shí)現(xiàn) CI/CD 自動(dòng)化,云原生與微服務(wù),云原生,ci/cd,gogs,drone

Drone

編寫(xiě) docker-compsoe.yml 文件:

version: "3"

volumes:
  dronedata:

services:
  drone-server:
    image: drone/drone:2
    container_name: drone-server
    environment:
      DRONE_AGENTS_ENABLED: "true"
      DRONE_GOGS_SERVER: "http://192.168.65.134:10880"
      # openssl rand -hex 16 生成, server 與 runner 的 DRONE_RPC_SECRET 設(shè)置相同
      DRONE_RPC_SECRET: "02cfbfe91f999c6f334158f4cf737490"
      DRONE_SERVER_HOST: "192.168.65.134:9080"
      DRONE_SERVER_PROTO: "http"
      # 必須是管理員身份,方便后續(xù)的配置選項(xiàng)等操作
      DRONE_USER_CREATE: "username:BetaCatPro,admin:true"
    volumes:
    - dronedata:/data
    restart: always
    ports:
    - '9080:80'
    - '9443:443'
  
  drone-runner:
    image: drone/drone-runner-docker:1
    container_name: drone-runner
    environment:
      DRONE_RPC_SECRET: "02cfbfe91f999c6f334158f4cf737490"
      DRONE_RPC_HOST: "192.168.65.134:9080"
      DRONE_RPC_PROTO: "http"
      DRONE_RUNNER_CAPACITY: "2"
      DRONE_RUNNER_NAME: "first-runner"
    volumes:
    - /etc/docker/:/etc/docker
    - /var/run/docker.sock:/var/run/docker.sock
    restart: always
    ports:
    - '3000:3000'
    depends_on:
    - drone-server

部分參數(shù)說(shuō)明:

  • DRONE_GOGS_SERVER : Gogs 服務(wù)地址(需要http://開(kāi)頭)
  • DRONE_RPC_SECRET: Drone 服務(wù)密匙(runner 也要使用相同密鑰)
  • DRONE_SERVER_HOST: Drone 服務(wù)地址,外部可訪(fǎng)問(wèn)的域名或IP地址
  • DRONE_SERVER_PROTO: Drone提供服務(wù)的協(xié)議類(lèi)型,可選為 http 或 https
  • DRONE_USER_CREATE: 設(shè)置Drone管理員賬號(hào)(是Gogs平臺(tái)里的賬號(hào))

執(zhí)行 :

docker-compose up -d

結(jié)果:
微服務(wù) & 云原生:基于 Gogs + Drone 實(shí)現(xiàn) CI/CD 自動(dòng)化,云原生與微服務(wù),云原生,ci/cd,gogs,drone
瀏覽器訪(fǎng)問(wèn) ip:port:
微服務(wù) & 云原生:基于 Gogs + Drone 實(shí)現(xiàn) CI/CD 自動(dòng)化,云原生與微服務(wù),云原生,ci/cd,gogs,drone
登錄用戶(hù)名密碼為上一步注冊(cè) gogs 時(shí)所用的,登錄成功進(jìn)入主頁(yè):
微服務(wù) & 云原生:基于 Gogs + Drone 實(shí)現(xiàn) CI/CD 自動(dòng)化,云原生與微服務(wù),云原生,ci/cd,gogs,drone
這里會(huì)顯示 gogs 中創(chuàng)建的代碼倉(cāng)庫(kù)列表。

流水線(xiàn)配置

激活鉤子

進(jìn)入 drone 相應(yīng)倉(cāng)庫(kù)頁(yè)面,點(diǎn)擊 ACTIVATE REPOSITORY 按鈕,激活鉤子:
微服務(wù) & 云原生:基于 Gogs + Drone 實(shí)現(xiàn) CI/CD 自動(dòng)化,云原生與微服務(wù),云原生,ci/cd,gogs,drone

激活后可以看到一些設(shè)置項(xiàng),注意一定要把 Trusted 選型勾選,否則在后續(xù)編寫(xiě)鉤子文件定義掛載操作時(shí)會(huì)出現(xiàn)下面錯(cuò)誤:

Drone untrusted repositories cannot mount host volumes

微服務(wù) & 云原生:基于 Gogs + Drone 實(shí)現(xiàn) CI/CD 自動(dòng)化,云原生與微服務(wù),云原生,ci/cd,gogs,drone
進(jìn)入到 gogs 中相應(yīng)倉(cāng)庫(kù),點(diǎn)擊倉(cāng)庫(kù)設(shè)置:
微服務(wù) & 云原生:基于 Gogs + Drone 實(shí)現(xiàn) CI/CD 自動(dòng)化,云原生與微服務(wù),云原生,ci/cd,gogs,drone
可以看到管理的 Web 鉤子:
微服務(wù) & 云原生:基于 Gogs + Drone 實(shí)現(xiàn) CI/CD 自動(dòng)化,云原生與微服務(wù),云原生,ci/cd,gogs,drone

編寫(xiě) .drone.yml 鉤子文件

在項(xiàng)目根目錄下編寫(xiě) .drone.yml 文件,用于定義觸發(fā) git 提交時(shí)的一系列操作,這里以文章開(kāi)頭描述的 kubemanagement-web 前端項(xiàng)目為例:

kind: pipeline
type: docker
name: kubemanagement-web-publish

environment:
  GOOS: linux
  GOARCH: amd64

steps:
  - name: build
    image: plugins/docker
    volumes:
      - name: hosts
        path: /etc/hosts
      - name: docker-ca
        path: /etc/docker
      - name: dockersock
        path: /var/run/docker.sock
    settings:
      username: admin
      password:
      	# 注意在 drone 頁(yè)面的 Secrets 添加對(duì)應(yīng)配置
        from_secret: harbor_password
      repo: harbor.kubemanagement.com/kubemanagement/kubemanagement-web
      registry: harbor.kubemanagement.com
      tags:
        - v1.1
  - name: ssh commands
    image: appleboy/drone-ssh
    settings:
      host: 192.168.65.134
      username: root
      password:
      	# 注意在 drone 頁(yè)面的 Secrets 添加對(duì)應(yīng)配置
        from_secret: ssh_password
      port: 22
      script:
        #拉取鏡像并重啟 注意--需要提前在目標(biāo)主機(jī)完成docker login
        - if [ $(docker ps -a | grep kubemanagement-web | wc -l) -ge 1 ];then docker stop kubemanagement-web && docker rm kubemanagement-web; fi
        - docker pull harbor.kubemanagement.com/kubemanagement/kubemanagement-web:v1.1
        - export BACKEND_HOST=http://192.168.65.134:8082/
        - docker run --name kubemanagement-web --restart=always -d -p8081:80 -e BACKEND_HOST=$BACKEND_HOST harbor.kubemanagement.com/kubemanagement/kubemanagement-web:v1.1
volumes:
  - name: hosts
    host:
      path: /etc/hosts
  - name: docker-ca
    host:
      path: /etc/docker
  - name: dockersock
    host:
      path: /var/run/docker.sock

然后在 drone 頁(yè)面的 Secrets 添加對(duì)應(yīng)配置,這里按照 .drone.yml 文件中使用到的有 harbor_password 和 ssh_password,value 分別為對(duì)應(yīng)平臺(tái)的密碼,我這里 harbor 的密碼為123456,gogs 密碼為 by6671715,分別添加即可:
微服務(wù) & 云原生:基于 Gogs + Drone 實(shí)現(xiàn) CI/CD 自動(dòng)化,云原生與微服務(wù),云原生,ci/cd,gogs,drone
編寫(xiě)好文件后,可進(jìn)行代碼提交。不過(guò)還需要查看 gogs 的配置文件中有沒(méi)有將 ip 加入到白名單中,如果有多個(gè) ip 則用 , 分隔。我這里 ip 為 192.168.65.134。具體配置如下:

  1. 首先查看 gogs 掛載的卷,查看 Mounts 里 Source 的內(nèi)容(注意,時(shí)下圖箭頭指向的位置),配置文件即在此目錄下:
docker inspect gogs

微服務(wù) & 云原生:基于 Gogs + Drone 實(shí)現(xiàn) CI/CD 自動(dòng)化,云原生與微服務(wù),云原生,ci/cd,gogs,drone

cd /var/lib/docker/volumes/gogs_gogsdata/_data
cd gogs/conf
vim app.ini
  1. 在 security 處加上配置:
LOCAL_NETWORK_ALLOWLIST = 192.168.65.134

微服務(wù) & 云原生:基于 Gogs + Drone 實(shí)現(xiàn) CI/CD 自動(dòng)化,云原生與微服務(wù),云原生,ci/cd,gogs,drone
3. 重啟 gogs

# 返回存放 gogs 的 docker-compose.yml 的目錄
docker-compose restart

如果沒(méi)有配置,還繼續(xù)提交代碼的話(huà),會(huì)出現(xiàn)下面情況:
微服務(wù) & 云原生:基于 Gogs + Drone 實(shí)現(xiàn) CI/CD 自動(dòng)化,云原生與微服務(wù),云原生,ci/cd,gogs,drone
微服務(wù) & 云原生:基于 Gogs + Drone 實(shí)現(xiàn) CI/CD 自動(dòng)化,云原生與微服務(wù),云原生,ci/cd,gogs,drone
可以看到,雖然提交成功,但點(diǎn)擊倉(cāng)庫(kù)設(shè)置,進(jìn)入管理 Web 鉤子項(xiàng),點(diǎn)擊存在的鉤子,如 http://192.168.65.134:9080/hook,可以看到:
微服務(wù) & 云原生:基于 Gogs + Drone 實(shí)現(xiàn) CI/CD 自動(dòng)化,云原生與微服務(wù),云原生,ci/cd,gogs,drone
鉤子并沒(méi)有生效,并報(bào)錯(cuò):

Payload URL resolved to a local network address that is implicitly blocked.

提交代碼,觸發(fā) Hooks

成功提交代碼,并觸發(fā)鉤子后,gogs 頁(yè)面中顯示成功信息:
微服務(wù) & 云原生:基于 Gogs + Drone 實(shí)現(xiàn) CI/CD 自動(dòng)化,云原生與微服務(wù),云原生,ci/cd,gogs,drone
drone 頁(yè)面信息如下:
微服務(wù) & 云原生:基于 Gogs + Drone 實(shí)現(xiàn) CI/CD 自動(dòng)化,云原生與微服務(wù),云原生,ci/cd,gogs,drone
點(diǎn)擊進(jìn)入,可以在 GRAPH VIEW 查看詳細(xì)進(jìn)度及日志:
微服務(wù) & 云原生:基于 Gogs + Drone 實(shí)現(xiàn) CI/CD 自動(dòng)化,云原生與微服務(wù),云原生,ci/cd,gogs,drone
可以看到目前處于 build 階段。完全構(gòu)建完成后,頁(yè)面如下:
微服務(wù) & 云原生:基于 Gogs + Drone 實(shí)現(xiàn) CI/CD 自動(dòng)化,云原生與微服務(wù),云原生,ci/cd,gogs,drone
harbor 頁(yè)面中對(duì)應(yīng)的鏡像版本也推送成功:
微服務(wù) & 云原生:基于 Gogs + Drone 實(shí)現(xiàn) CI/CD 自動(dòng)化,云原生與微服務(wù),云原生,ci/cd,gogs,drone文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-647187.html

到了這里,關(guān)于微服務(wù) & 云原生:基于 Gogs + Drone 實(shí)現(xiàn) CI/CD 自動(dòng)化的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

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

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

相關(guān)文章

  • Docker 配置 Gitea + Drone 搭建 CI/CD 平臺(tái)

    Docker 配置 Gitea + Drone 搭建 CI/CD 平臺(tái)

    本文的IP地址是為了方便理解隨便打的,不要亂點(diǎn) 首先使用 docker 搭建 Gitea 服務(wù)器,用于管理代碼版本,數(shù)據(jù)庫(kù)選擇mysql Gitea 服務(wù)器的 docker-compose.yml 配置文件如下: 運(yùn)行前先去數(shù)據(jù)庫(kù)服務(wù)器中新建一個(gè)名為 gitea 的數(shù)據(jù)庫(kù) 命令: CREATE DATABASE gitea 編寫(xiě)完成后在當(dāng)前目錄下運(yùn)行

    2024年01月23日
    瀏覽(28)
  • 【前端自動(dòng)化部署】,Devops,CI/CD

    【前端自動(dòng)化部署】,Devops,CI/CD

    提到 Jenkins ,想到的第一個(gè)概念就是 CI/CD 在這之前應(yīng)該再了解一個(gè)概念。 DevOps Development 和 Operations 的組合,是一種方法論,并不特指某種技術(shù)或者工具。 DevOps 是一種重視 Dev 開(kāi)發(fā)人員和 Ops 運(yùn)維人員之間溝通、協(xié)作的流程。通過(guò)自動(dòng)化的軟件交付,使軟件的構(gòu)建,測(cè)試,發(fā)

    2024年02月10日
    瀏覽(56)
  • 前端自動(dòng)化部署,Devops,CI/CD

    前端自動(dòng)化部署,Devops,CI/CD

    提到 Jenkins,想到的第一個(gè)概念就是 CI/CD 在這之前應(yīng)該再了解一個(gè)概念。 DevOps? Development ?和? Operations ?的組合,是一種方法論,并不特指某種技術(shù)或者工具。DevOps 是一種重視? Dev ?開(kāi)發(fā)人員和? Ops ?運(yùn)維人員之間溝通、協(xié)作的流程。通過(guò)自動(dòng)化的軟件交付,使軟件的構(gòu)建

    2024年02月10日
    瀏覽(58)
  • DevOps:自動(dòng)化部署和持續(xù)集成/持續(xù)交付(CI/CD)

    在現(xiàn)代軟件開(kāi)發(fā)領(lǐng)域,DevOps(Development和Operations的組合)已經(jīng)成為一個(gè)不可或缺的概念。它代表了一種將軟件開(kāi)發(fā)和運(yùn)維(Operations)緊密結(jié)合的方法,旨在提高軟件交付速度、質(zhì)量和可靠性。本文將深入探討DevOps中的關(guān)鍵概念,特別是自動(dòng)化部署和持續(xù)集成/持續(xù)交付(CI/C

    2024年02月07日
    瀏覽(33)
  • Gitlab CI/CD 自動(dòng)化打包部署前端(vue)項(xiàng)目

    Gitlab CI/CD 自動(dòng)化打包部署前端(vue)項(xiàng)目

    一、虛擬機(jī)安裝 1.vmware下載 2.鏡像下載 3.Ubuntu 4.新建虛擬機(jī) 一直點(diǎn)下一步,直到點(diǎn)擊完成。 5.分配鏡像 二、Gitlab CI/CD 自動(dòng)化部署項(xiàng)目 1.配置GitLab CI/CD: 2.生成SSH密鑰對(duì): 如果尚未生成,請(qǐng)?jiān)诒镜貦C(jī)器上生成一個(gè)SSH密鑰對(duì): 3.將SSH私鑰添加到GitLab: 4.更新GitLab CI/CD配置: 5

    2024年03月13日
    瀏覽(15)
  • 使用GitLab CI/CD 定時(shí)運(yùn)行Playwright自動(dòng)化測(cè)試用例
  • 在 CI/CD流水線(xiàn)中運(yùn)行自動(dòng)化單元測(cè)試的4個(gè)原因

    目錄 什么是單元測(cè)試? C#中的單元測(cè)試示例 我需要在CI/CD 流水線(xiàn)中運(yùn)行自動(dòng)化測(cè)試嗎? 開(kāi)發(fā)人員代碼驗(yàn)證反饋循環(huán) 預(yù)驗(yàn)證 步步為營(yíng) 減少“另一個(gè)開(kāi)發(fā)人員寫(xiě)了這段代碼”的問(wèn)題 單元測(cè)試 什么是單元測(cè)試? 單元測(cè)試是一小段代碼,用于測(cè)試應(yīng)用程序編寫(xiě)的代碼的邏輯。單

    2024年02月16日
    瀏覽(50)
  • 通過(guò) Github workflows CI/CD 自動(dòng)化部署 Github Pages hugo 免費(fèi)博客

    通過(guò) Github workflows CI/CD 自動(dòng)化部署 Github Pages hugo 免費(fèi)博客

    文章博客地址:https://blog.taoluyuan.com/posts/github-workflows/ GitHub Actions 介紹 GitHub 文檔:https://docs.github.com/zh/actions/learn-github-actions/understanding-github-actions 官方介紹: GitHub Actions 是一種持續(xù)集成和持續(xù)交付 (CI/CD) 平臺(tái),可用于自動(dòng)執(zhí)行生成、測(cè)試和部署管道。 您可以創(chuàng)建工作流程來(lái)

    2024年02月07日
    瀏覽(55)
  • 在服務(wù)器部署Next.js、Node.js項(xiàng)目,并實(shí)現(xiàn)自動(dòng)部署(偽CI\CD)超詳細(xì)

    在服務(wù)器部署Next.js、Node.js項(xiàng)目,并實(shí)現(xiàn)自動(dòng)部署(偽CI\CD)超詳細(xì)

    目錄 一、引言 二、配置服務(wù)器 1. 遠(yuǎn)程連接服務(wù)器 · 用服務(wù)商提供的遠(yuǎn)程連接 · 用MotaXterm來(lái)遠(yuǎn)程連接 ?編輯?編輯?編輯 ?2. 登錄實(shí)例 · 如何獲取賬號(hào)和密碼 · 服務(wù)商遠(yuǎn)程連接方式: ?·?MotaXterm連接方式 三、項(xiàng)目準(zhǔn)備與測(cè)試 1. 安裝nodejs · 進(jìn)入安裝目錄 · 下載 · 解壓 ·

    2024年02月05日
    瀏覽(32)
  • 基于Jenkins實(shí)現(xiàn)的CI/CD方案

    基于Jenkins實(shí)現(xiàn)的CI/CD方案

    最近基于Jenkins的基座,搭建了一套適用于我們項(xiàng)目小組的持續(xù)集成環(huán)境?,F(xiàn)在把流程整理分享出來(lái),希望可以給大家提供一些幫助和思路。 組件名稱(chēng) 組件版本 作用 Harbor 2.7.3 鏡像倉(cāng)庫(kù) Jenkins 2.319.2 持續(xù)集成工具 Pipeline 2.6 Jenkins插件,編排流水線(xiàn)腳本 SSH Pipeline Steps 2.0.0 Jenki

    2024年02月22日
    瀏覽(24)

覺(jué)得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

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

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包