You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

开源Azure API Management开发者门户Jenkins替代GitHub Actions方案咨询

Azure API Management开源开发者门户:Jenkins替代GitHub Actions方案及无CI/CD运行方式

一、Jenkins替代GitHub Actions的实现方案

1. 核心流程匹配

原GitHub Actions步骤3的核心是代码拉取→依赖安装→生产构建→部署,对应Jenkins流水线可按以下逻辑实现:

  • 拉取企业GitHub仓库代码(需配置Jenkins凭证)
  • 安装项目依赖
  • 构建生产静态包
  • 部署到目标托管环境(如Azure存储)

2. Jenkins Declarative流水线示例

pipeline {
    agent any
    environment {
        // 预先在Jenkins凭证管理中配置以下凭证
        GITHUB_CRED = credentials('enterprise-github-token')
        AZURE_SP = credentials('azure-service-principal')
        BUILD_OUTPUT = 'dist'
        STORAGE_ACCOUNT = '你的Azure存储账户名'
        STATIC_CONTAINER = '$web'
    }
    stages {
        stage('拉取代码') {
            steps {
                git url: '企业GitHub仓库地址', 
                    branch: 'main', 
                    credentialsId: 'enterprise-github-token'
            }
        }
        stage('安装依赖') {
            steps {
                sh 'npm install'
            }
        }
        stage('构建生产包') {
            steps {
                sh 'npm run build'
            }
        }
        stage('部署到Azure存储') {
            steps {
                withCredentials([azureServicePrincipal(credentialsId: 'azure-service-principal',
                                                      clientIdVariable: 'AZ_CLIENT_ID',
                                                      clientSecretVariable: 'AZ_CLIENT_SECRET',
                                                      tenantIdVariable: 'AZ_TENANT_ID')]) {
                    sh '''
                        az login --service-principal -u $AZ_CLIENT_ID -p $AZ_CLIENT_SECRET --tenant $AZ_TENANT_ID
                        az storage blob upload-batch -d $STATIC_CONTAINER -s $BUILD_OUTPUT --account-name $STORAGE_ACCOUNT
                    '''
                }
            }
        }
    }
    post {
        always {
            sh 'az logout'
        }
    }
}

3. 关键配置注意事项

  • 确保Jenkins节点已安装Node.js、npm和Azure CLI
  • 在Jenkins凭证库中添加:
    • 企业GitHub访问Token(用于拉取私有仓库)
    • Azure服务主体凭证(用于授权部署到Azure资源)
  • 若项目需注入环境变量(如API Management实例信息),可在流水线environment块中添加对应变量

二、无需CI/CD工具的手动运行/部署方式

1. 本地开发环境运行

  • 克隆仓库到本地:git clone 企业GitHub仓库地址
  • 进入项目目录:cd API-Portal
  • 安装依赖:npm install
  • 启动开发服务器:npm start,访问本地默认端口(通常为3000)即可预览门户

2. 本地构建后手动部署

  • 执行生产构建:npm run build,生成的静态文件会存放在dist目录
  • 手动部署到静态托管服务:
    • Azure存储:登录Azure门户,进入目标存储账户的$web容器,上传dist目录下所有文件
    • 或使用本地Azure CLI命令:az storage blob upload-batch -d $web -s dist --account-name 你的存储账户名
  • 配置API Management实例指向该静态托管地址

内容的提问来源于stack exchange,提问作者Watts

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.23 06:52:21