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

如何在JFrog Artifactory创建仓库并通过GitLab发布NPM包

将通用代码封装为NPM包并发布到JFrog Artifactory的完整流程

1. 在JFrog Artifactory创建专属NPM仓库

  • 登录JFrog平台,进入Artifactory模块
  • 点击「Create Repository」,选择「npm」类型,创建Local Repository(用于存储私有发布包)
  • 填写仓库名称(比如internal-npm-packages),配置权限(确保发布账号拥有Deploy权限)
  • 保存后复制仓库API URL,格式为:https://<你的JFrog域名>/artifactory/api/npm/<仓库名称>/

2. 通过GitLab CI/CD发布NPM包

前置准备

  • 在通用代码目录执行npm init,完成package.json初始化,确认包名、版本号等信息无误
  • 进入GitLab项目的「Settings > CI/CD > Variables」,添加以下加密变量:
    • JFROG_URL:上述复制的仓库API URL
    • JFROG_USER:拥有发布权限的JFrog账号
    • JFROG_PASSWORD:对应账号的密码或API Key

编写CI配置文件

在项目根目录创建.gitlab-ci.yml,内容如下:

stages:
  - publish

publish:
  stage: publish
  image: node:18-alpine
  script:
    - npm config set registry $JFROG_URL
    - npm login --registry=$JFROG_URL --username=$JFROG_USER --password=$JFROG_PASSWORD --no-audit
    - npm publish
  only:
    - tags # 仅在打版本tag时触发发布,保证版本一致性

可选优化

在package.json中添加publishConfig字段,简化CI配置:

"publishConfig": {
  "registry": "https://<你的JFrog域名>/artifactory/api/npm/<仓库名称>/"
}

3. 在业务项目中安装使用该包

临时安装(单次使用)

直接在install命令中指定JFrog仓库地址:

npm install <你的包名> --registry=https://<你的JFrog域名>/artifactory/api/npm/<仓库名称>/

全局配置(所有项目生效)

执行命令将默认registry切换为JFrog仓库,仅需配置一次:

npm config set registry https://<你的JFrog域名>/artifactory/api/npm/<仓库名称>/
# 登录认证
npm login --registry=https://<你的JFrog域名>/artifactory/api/npm/<仓库名称>/

项目级配置(仅当前项目生效)

在项目根目录创建.npmrc文件,写入:

registry=https://<你的JFrog域名>/artifactory/api/npm/<仓库名称>/
# 需权限验证时添加以下内容
//<你的JFrog域名>/artifactory/api/npm/<仓库名称>/:username=<你的JFrog账号>
//<你的JFrog域名>/artifactory/api/npm/<仓库名称>/:_password=<Base64编码的密码>

之后直接执行npm install <你的包名>即可从JFrog仓库拉取包。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.16 12:15:38