华为云云耀云服务器L实例评测|华为云耀云服务器L实例私有库搭建verdaccio(八)

九、华为云耀云服务器L实例私有库搭建verdaccio:

Verdaccio 是一个简单的、零配置本地私有 npm 软件包代理注册表。Verdaccio 开箱即用,拥有自己的小型数据库,能够代理其它注册表(例如 npmjs.org),缓存下载的模块。

搭建团队的私有仓库,保证团队组件的安全维护和私密性,提高了公共化的效率,降低团队的开发成本。


1. npm简单安装:

js 复制代码
# npm全局安装verdaccio
npm i -g verdaccio
# 执行verdaccio
verdaccio  // 发现提示命令找不到
# 查找verdaccio位置
find / -name verdaccio
# 执行verdaccio
/usr/local/node/bin/verdaccio

2. 安装pm2启动verdaccio服务:

传统Node服务管理的痛点:
在工作中遇到当服务器实例重启后,需要一个个去重新启动每个Node服务,不仅管理繁琐、效率低,而且容易遗漏开启一些Node服务。

pm2 是一个带有负载均衡功能的 Node 应用的进程管理器工具,可以利用它来简化很多 node 应用管理的繁琐任务,如性能监控、自动重启、负载均衡等,用处就是监控生产环境下的Node服务程序运行的状态。

js 复制代码
# 安装pm2
npm install -g pm2
# 执行pm2
pm2    // 发现提示命令找不到
# 查找pm2
find / -name pm2
# 执行pm2
/usr/local/node/bin/pm2

开通服务器的外网4873端口,就可以直接使用华为云耀云服务器L实例服务器的IP + port进行访问verdaccio服务。

如下为使用华为云耀云服务器L实例服务器的IP + port进行访问verdaccio服务:


3. docker-compose启动verdaccio服务:

上面是简单的从npm安装进行,实际上为了考虑公司的稳定性,还是建议使用docker进行部署,如下为docker-compose的部署文件。

docker-compose.yml文件:

js 复制代码
version: '3'

networks:
  node-network:
    driver: bridge

services:
  ### Verdaccio Container ###########################
  verdaccio:
    image: verdaccio/verdaccio
    container_name: "verdaccio"
    networks:
      - node-network
    environment:
      - VERDACCIO_PORT=8010
    ports:
      - "8010:8010"
    volumes:
      - "./verdaccio/storage:/verdaccio/storage"
      - "./verdaccio/config:/verdaccio/conf"
      - "./verdaccio/plugins:/verdaccio/plugins"

4. 初始化公共库仓库并进行发布版本:

发布verdaccio:

js 复制代码
npm publish --registry http://124.70.42.136:4873/

通过npm publish发布npm包,发布后就可以看到verdaccio能够显示刚刚发布的包。

点击查看里面详细的信息,有不同的安装方式的命令。


5. 小结:

我们平时使用npm publish进行发布时,上传的仓库默认地址是npm,通过Verdaccio工具在本地新建一个仓库地址,再把本地的默认上传仓库地址切换到本地仓库地址即可。当npm install时没有找到本地的仓库,则Verdaccio默认配置中会从npm中央仓库下载。

相关推荐
梁下轻语的秋缘9 小时前
I2S与I2C
运维·stm32·单片机·51单片机
安达发公司9 小时前
安达发|效率革命:APS自动排程,为“金属丛林”安装精准导航
大数据·运维·人工智能·aps高级排程·aps排程软件·安达发aps·aps自动排程
Yeats_Liao10 小时前
MindSpore开发之路(八):数据处理之Dataset(上)——构建高效的数据流水线
数据结构·人工智能·python·机器学习·华为
科士威传动10 小时前
精密仪器中的微型导轨如何选对润滑脂?
大数据·运维·人工智能·科技·机器人·自动化
TracyGC10 小时前
Linux环境-RTX5080显卡CUDA12.8下安装mmcv/mmdetection3d
linux·运维·服务器
云老大TG:@yunlaoda36010 小时前
华为云国际站代理商NAT的高可用与弹性具体是如何实现的?
服务器·数据库·华为云·负载均衡
FrameNotWork10 小时前
HarmonyOS 教学实战(六):复杂表单与校验体系(把“最难写”的模块写优雅)
华为·harmonyos
xu_ws10 小时前
Linux下快速安装配置Redis全攻略
linux·运维·服务器
先生沉默先10 小时前
c#Socket学习,使用Socket创建一个在线聊天,服务端功能实现,(3)
服务器·学习·c#
qq_21539789710 小时前
内网穿透服务 frps
运维·docker·容器