Python微信订餐小程序课程视频
https://edu.csdn.net/course/detail/36074
Python实战量化交易理财系统
https://edu.csdn.net/course/detail/35475
提示:本系列笔记全部存在于
Github,
可以直接在
Github 查看全部笔记
对于个人来说,私有NPM仓库 作用性基本很小,但是对于企业,私有NPM仓库 可以保护代码暴露,具有很大的意义。
也是为了学习搭建 私有NPM仓库,就在持续部署中集成了私有仓库。
开源社区,有两个广泛使用的 私有NPM仓库 项目:
Sinopia
项目官方于2019年已经不再维护,也就是现在已经不在推荐使用此项目。
Verdaccio
项目是从 Sinopia
项目 fork 出来的,官方声称 100% 向后兼容 Sinopia
。
Verdaccio
目前也就成了最普遍的 私有NPM仓库 的解决方案。
Verdaccio
Verdaccio 概述
Verdaccio
是一个 Node
创建的轻量的私有 npm proxy registry
Verdaccio
中最强大的两个功能是 上行链路 和 包身份权限
Verdaccio 部署
Docker Compose 文件
Verdaccio
的 Docker Compose
文件比较简单,主要是配置数据挂载
version: '3.9'
services:
verdaccio:
image: verdaccio/verdaccio:5.5
container\_name: verdaccio
restart: always
ports:
- '4873:4873'
volumes:
- /volumes/verdaccio/conf:/verdaccio/conf
- /volumes/verdaccio/storage:/verdaccio/storage
- /volumes/verdaccio/plugins:/verdaccio/plugins
config.yaml
Verdaccio
项目提供了一个配置文件: config.yaml。
默认情况下 Verdaccio
会在首次运行时创建此文件。
但因为使用了 宿主目录 挂载数据,所以需要预先创建此文件。
# 包存储地址
storage: /verdaccio/storage
# 插件存储地址
plugins: /verdaccio/plugins
# UI相关信息
web:
enable: true # 开启 Web 页面
title: Verdaccio # Web 页面标题
# 身份认证
auth:
htpasswd: # 默认情况下使用的 htpasswd 插件作为身份认证
file: /verdaccio/conf/htpasswd # htpasswd 文件为加密认证信息文件
max\_users: -1 # 最大用户数量, -1 表示禁用新用户注册
# 上行链路
uplinks:
npmjs: # 上行名称,随便定义
url: https://registry.npmjs.org/ # 上行地址
timeout: 30s # 超时时间
taobao: # 上行名称
url: https://registry.npm.taobao.org/ # 上行地址
timeout: 30s
# 包访问设置, 可以根据名称对包做不同权限设置
packages:
'@*/*':
access: $authenticated # 登录用户才允许访问
publish: $authenticated # 登录用户才允许发布
proxy: taobao # 代理上行链路地址
'**':
access: $authenticated # 登录用户才允许访问
publish: $authenticated # 登录用户才允许发布
proxy: taobao # 代理上行链路地址
server:
keepAliveTimeout: 30 # 服务器保持活动链接的时间,较大的包可能会消耗一定时间,此属性就是设置活动链接时间
middlewares:
audit:
enabled: true
# 日志
logs: { type: stdout, format: pretty,