当前位置: 首页 > news >正文

Linux 中使用 verdaccio 搭建私有npm 服务器

安装 Node

Linux中安装Node

安装verdaccio

npm i -g verdaccio

安装完成 输入verdaccio,出现下面信息代表安装成功,同时输入verdaccio后verdaccio已经处于运行状态,当然这种启动时暂时的,我们需要通过pm2让verdaccio服务常驻

   yg@iZ2zec61wsgbo9t9i346jbZ:~$ verdacciowarn --- config file  - /home/yg/.config/verdaccio/config.yamlwarn --- Plugin successfully loaded: htpasswdwarn --- Plugin successfully loaded: auditwarn --- http address - http://localhost:4873/ - verdaccio/3.10.1

配置config.yaml

1、vim /home/yg/.config/verdaccio/config.yaml 进入编辑配置文件# This is the default config file. It allows all users to do anything,
# so don't use it on production systems.
#
# Look here for more config file examples:
# https://github.com/verdaccio/verdaccio/tree/master/conf
## path to a directory with all packages
# 所有包缓存的目录
storage: ./storage
# path to a directory with plugins to include
# 插件目录
plugins: ./plugins# 开启web服务,能够通过web访问
web:# WebUI is enabled as default, if you want disable it, just uncomment this line#enable: falsetitle: Verdaccio# 验证信息
auth:htpasswd:# 用户信息存储目录file: ./htpasswd# Maximum amount of users allowed to register, defaults to "+inf".# You can set this to -1 to disable registration.#max_users: 1000# a list of other known repositories we can talk to
# 公有仓库配置
uplinks:npmjs:url: https://registry.npmjs.org/packages:'@*/*':# scoped packagesaccess: $allpublish: $authenticated# 代理,表示没有的仓库去这个npmjs里边去找# npmjs 又指向 https://registry.npmjs.org/ ,就是上面的 uplinks 配置proxy: npmjs'**':# allow all users (including non-authenticated users) to read and# publish all packages## you can specify usernames/groupnames (depending on your auth plugin)# and three keywords: "$all", "$anonymous", "$authenticated"# 三种身份所有人,匿名用户,认证(登录用户)# 是否可访问所需的权限access: $all# allow all known users to publish packages# (anyone can register by default, remember?)# 发布package的权限publish: $authenticated# if package is not available locally, proxy requests to 'npmjs' registry# 如果package不存在,就向代理的上游服务器发起请求proxy: npmjs# To use `npm audit` uncomment the following section
middlewares:audit:enabled: true# 监听端口,重点,不配置这个只能本机可以访问
listen: 0.0.0.0:4873# log settings
logs:- {type: stdout, format: pretty, level: http}#- {type: file, path: verdaccio.log, level: info}

安装 pm2

npm i pm2 -g

启动

pm2 start verdaccio  

就可以通过http://xxx(ip地址)去访问了

在这里插入图片描述

设置 npm 服务指向本地

npm config set registry http://localhost:4873

注册用户

# 注册用户 在本地注册一个用户然后指向我们的地址然后我们就可以发布包了
npm adduser --registry http://xxx:4873
Username: xxx
Password: xxx
Password:  xxx
Email: (this IS public) xxx
Logged in as yg-ui on http://xxx/ (你的ip地址)
这时候我们就注册一个用户,我们可以用这个用户名和密码去登录去上图窗口去登录了

登录

npm login 	# 用刚刚注册的用户名密码进行登录
npm whoami	# 查看当前登录的账号

发包

mkdir npm-publish-test	# 包文件夹
cd npm-publish-test
npm init				# npm初始化
npm publish	

删除 指定版本或包

$ npm unpublish [<pkg>][@<version>] --force

下面列一下几种使用场景

  • $ npm unpublish dzmtest@1.0.1 --force
    直接强制删除指定包的指定版本,不需要 cd 进入包文件夹内,随处可以执行。

  • $ npm unpublish dzmtest --force
    直接强制删除指定包,不需要 cd 进入包文件夹内,随处可以执行。

http://www.lryc.cn/news/113438.html

相关文章:

  • C++入门之stl六大组件--stack和queue源码深度剖析及模拟实现
  • MyCat配置文件schema.xml讲解
  • Grafana集成prometheus(2.Grafana安装)
  • 代码随想录算法训练营第五十七天| 647. 回文子串 516.最长回文子序列
  • django 优化方式
  • IDEA中怎么使用git下载项目到本地,通过URL克隆项目(giteegithub)
  • 09. Docker Compose
  • 如何在shell脚本将node_modules里的文件复制一份到public文件里
  • 监控Redis的关键指标
  • Openlayers和leaflet如何选用?
  • 跟我学C++中级篇——三五法则
  • aardio:用 WebView 模仿 mdict 界面
  • linq中的操作符
  • 数据结构【哈夫曼树】
  • SpringMVC基于SpringBoot的最基础框架搭建——包含数据库连接
  • deepspeed zero3
  • 代驾小程序怎么做
  • 探索 AJAX 技术:实现动态数据交互的前端利器
  • 深度学习Redis(3):主从复制
  • php笔记1
  • 2023 ChinaJoy 圆满闭幕,FairGuard游戏加固亮相 BTOB 展区
  • 数据规约策略
  • 服务器带宽独享跟共享有什么区别103.36.166.x
  • 【cluster_block_exception】写操作elasticsearch索引报错
  • chaitin-Nginx+Docker
  • 具体面试题
  • Logback ThresholdFilter LevelFilter
  • python+django+mysql项目实践二(前端及数据库)
  • Kubernetes高可用集群二进制部署(五)kubelet、kube-proxy、Calico、CoreDNS
  • 拦截器对接口细粒度权限校验