服务器构建私有npm库(Docker + Verdaccio)
创始人
2024-11-29 17:06:50
0

npm官网有时候因为网络原因包推不上去,那就简单构建个私有库
私有库不会被共享,且配置不需要太高1h2G就行
1.需要安装Docker,这个跳过了
2.生成配置文件

mkdir /home/verdaccio cd /home/verdaccio mkdir conf && mkdir storage && mkdir plugins cd conf touch htpasswd vi config.yaml  

3.在config.yaml中写入配置

# 存放软件所有软件包的目录 storage: ../storage # 存放所有插件的目录 plugins: ../plugins  web:   # 网站Title   title: Verdaccio   # 禁用Gravatar头像   # gravatar: false   # 排序方式 asc|desc   # sort_packages: asc   # 是否启用暗黑模式   # darkMode: true   # logo地址   # logo: http://somedomain/somelogo.png   # favicon地址   # favicon: http://somedomain/favicon.ico | /path/favicon.ico  # i18n翻译配置 # i18n: # 可用列表见:https://github.com/verdaccio/ui/tree/master/i18n/translations #   web: en-US  auth:   htpasswd:     file: ./htpasswd     # 最大注册用户数,默认为 "+inf".     # 可用通过设置为-1禁止注册     # max_users: 1000  # 上游npm库,这里可用设置为淘宝 uplinks:   npmjs:     url: https://registry.npmjs.org/  packages: 	# 作用域包   '@*/*':       # 允许所有人访问     access: $all     # 注册用户可访问     publish: $authenticated     # 注册用户可访问     unpublish: $authenticated     proxy: npmjs    '**':     # 默认情况下所有用户 (包括未授权用户) 都可以查看和发布任意包     # 你可以指定 用户名/分组名 (取决于你使用什么授权插件,默认的授权插件是内置的 htpasswd)     # 访问权限有三个关键词: "$all", "$anonymous", "$authenticated"     # $all 表示不限制,任何人可访问;     # $anonymous 表示未注册用户可访问;     # $authenticated 表示只有注册用户可访问     access: $all      # 允许所有注册用户发布/撤销已发布的软件包     # (注意:默认情况下任何人都可以注册)     publish: $authenticated     unpublish: $authenticated      # 如果私有包服务不可用在本地,则会代理请求到'npmjs'     proxy: npmjs  # 您可以指定传入连接的HTTP /1.1服务器保持活动超时(以秒为单位)。 # 值为0会使http服务器的行为类似于8.0.0之前的Node.js版本,后者没有保持活动超时。 # 解决方法:通过给定的配置可以解决以下问题 server:   keepAliveTimeout: 60 publish:    true # 中间件 middlewares:   audit:     enabled: true  # 日志设置 logs: { type: stdout, format: pretty, level: http }  # 开放远程访问,允许所有IP listen:   - 0.0.0.0:4873  

4.安装运行 verdaccio

V_PATH=/home/verdaccio; docker run -d -it --name verdaccio \   -p 4873:4873 \   -v $V_PATH/conf:/verdaccio/conf \   -v $V_PATH/storage:/verdaccio/storage \   -v $V_PATH/plugins:/verdaccio/plugins \   verdaccio/verdaccio  

容器安装完毕后就可以运行 http://服务器ip:4873 访问私有服

5.给软件包目录和用户记录文件目录授予权限
必须做,不然无法新增用户和上传软件包

chown 10001:65533 /home/verdaccio/conf/htpasswd chown 10001:65533 /home/verdaccio/storage chown 10001:65533 /home/verdaccio/plugins  

6.npm 源替换为私有库源

npm config set registry http://服务器ip:4873 

7.注册私有库用户,登录,查看,发包

npm adduser npm login npm who am i npm publish 

引用自原作者

8.docker可能没法拉镜像,要么科学上网,要么加几个源
阿里加速器

不过还是遇到个问题,重启容器,包没了

相关内容

热门资讯

透视脚本!xpoker辅助器,... 透视脚本!xpoker辅助器,德普之星私人局透视(透视)一贯真的是有辅助工具(哔哩哔哩)1)xpok...
第8分钟了解!透视辅助功能插件... 第8分钟了解!透视辅助功能插件(辅助)同道麻将开挂辅助软件-竟然有挂辅助器1、用户打开应用后不用登录...
透视工具!xpoker辅助怎么... 透视工具!xpoker辅助怎么用,德普之星辅助器怎么用(透视)确实真的是有辅助教程(哔哩哔哩)1、超...
第五分钟了解!顺欣茶楼辅助软件... 第五分钟了解!顺欣茶楼辅助软件(辅助)初念大厅开挂辅助软件-好像存在有辅助器1、用户打开应用后不用登...
据权威媒体报道!sohoo竞技... 据权威媒体报道!sohoo竞技联盟辅助器,德普辅助器怎么用(透视)切实是真的辅助神器(哔哩哔哩)一、...
第三分钟了解!微乐卡五星祈福有... 第三分钟了解!微乐卡五星祈福有用吗(辅助)真宗南通长牌开挂辅助工具-竟然是真的下载1)微乐卡五星祈福...
透视透视!拱趴大菠萝十三水作必... 透视透视!拱趴大菠萝十三水作必弊,德普软件(透视)总是有辅助技巧(哔哩哔哩)一、拱趴大菠萝十三水作必...
五分钟了解!新九哥辅助app(... 五分钟了解!新九哥辅助app(辅助)边锋舟山棋牌开挂辅助辅助器-果然是有安装1、新九哥辅助app透视...
透视系统!约局吧德州真的存在透... 透视系统!约局吧德州真的存在透视吗,德普之星透视辅助软件(透视)真是真的是有辅助攻略(哔哩哔哩)1、...
5分钟了解!wepoker辅助... 5分钟了解!wepoker辅助器(辅助)塘沽麻将开挂辅助辅助器-竟然存在有工具;1、5分钟了解!we...