NipGeihou's blog NipGeihou's blog
  • Java

    • 开发规范
    • 进阶笔记
    • 微服务
    • 快速开始
    • 设计模式
  • 其他

    • Golang
    • Python
    • Drat
  • Redis
  • MongoDB
  • 数据结构与算法
  • 计算机网络
  • 应用

    • Grafana
    • Prometheus
  • 容器与编排

    • KubeSphere
    • Kubernetes
    • Docker Compose
    • Docker
  • 组网

    • TailScale
    • WireGuard
  • 密码生成器
  • 英文单词生成器
🍳烹饪
🧑‍💻关于
  • 分类
  • 标签
  • 归档

NipGeihou

我见青山多妩媚,料青山见我应如是
  • Java

    • 开发规范
    • 进阶笔记
    • 微服务
    • 快速开始
    • 设计模式
  • 其他

    • Golang
    • Python
    • Drat
  • Redis
  • MongoDB
  • 数据结构与算法
  • 计算机网络
  • 应用

    • Grafana
    • Prometheus
  • 容器与编排

    • KubeSphere
    • Kubernetes
    • Docker Compose
    • Docker
  • 组网

    • TailScale
    • WireGuard
  • 密码生成器
  • 英文单词生成器
🍳烹饪
🧑‍💻关于
  • 分类
  • 标签
  • 归档
  • Linux

  • Docker

  • 云原生

  • Kubernetes

  • KubeSphere

  • K3S

  • 笔记

  • PVE

  • 维修

  • DevOps

    • DevOps最佳实践
    • Github Actions
    • Jenkins

      • 安装
      • 凭证(credentials)
      • 代理(agent)
      • 最佳实践
        • 创建任务
        • 配置流水线
          • Git Pull
          • Npm Install & Build
        • 完整配置
    • Coding

  • 云服务

  • 路由器

  • Hyper-V

  • Windows

  • macOS

  • 运维
  • DevOps
  • Jenkins
NipGeihou
2023-08-18
目录

最佳实践

# 创建任务

创建一个流水线任务

# 配置流水线

通过 Hello World 生成一个基础结构:

image-20230820105803010

# Git Pull

  • 需要先创建一个 SSH 公私钥

    • 将私钥上传到 Jenkins 的凭证
    • 将公钥上传到 Github
  • 在 Dashboard - Manage Jenkins - Security 中将

    • Git Host Key Verification Configuration - Host Key Verification Strategy 设为 Accept first connerction (接受第一个连接)

    • 这个策略与 Windows 默认策略一样,即在第一次连接时记录对方主机密钥,而如果对方之后修改了秘钥,将会报错,也就是常遇到的通过 ssh 连接服务器,服务器重装后(ip 不变)却无法连接的问题。

      参考:Git client | Jenkins plugin (opens new window)

  • 通过片段生成器得到

    stage('Git Pull') {
        steps {
            cleanWs()
            git credentialsId: 'jenkins-ssh-private-key', url: '[email protected]:NipGeihou/demo.git'
        }
    }
    

# Npm Install & Build

基于 Docker 镜像

stage('Dependency Install & Build') {
    agent {
        docker {
            image 'node:16-alpine'
            args '-u root'
            reuseNode true
        }
    }
    steps {
        sh 'npm install'
        sh 'npm run build'
    }
}

# 完整配置


上次更新: 2024/03/11, 22:37:05
代理(agent)
Coding最佳实践

← 代理(agent) Coding最佳实践→

最近更新
01
Docker Swarm
04-18
02
安全隧道 - gost
04-17
03
Solana最佳实践
04-16
更多文章>
Theme by Vdoing | Copyright © 2018-2025 NipGeihou | 友情链接
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式