华为云云耀云服务器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中央仓库下载。

相关推荐
hkNaruto33 分钟前
【DevOps】基于Nexus部署内网pypi代理镜像仓库操作手册
运维·devops
ximy133544 分钟前
AI服务器工作之线材的接口介绍
运维·服务器
leo__5201 小时前
skynet.start 的作用详细解析
服务器
ximy13351 小时前
AI服务器工作之ubuntu系统下的驱动安装
运维·服务器·ubuntu
²º²²এ松1 小时前
蓝牙低功耗(BLE)通信的中心设备/外围设备(连接角色)、主机/从机(时序角色)、客户端/服务器(数据交互角色)的理解
运维·服务器·数据库
Maple_land1 小时前
常见Linux环境变量深度解析
linux·运维·服务器·c++·centos
xx.ii3 小时前
jenkins流水线项目部署
运维·jenkins
小白银子3 小时前
零基础从头教学Linux(Day 53)
linux·运维·python
EndingCoder3 小时前
MongoDB基础与Mongoose ODM
服务器·javascript·数据库·mongodb·中间件·node.js
wanhengidc3 小时前
云手机的安全保护措施有哪些?
运维·服务器·安全·游戏·智能手机·云计算