Wuxh

Front-end Development

0%

Docker 创建 npm 私服

 记录一下如何使用 Docker 和 verdaccio 部署 NPM 私服。

docker-compose.yml

1
2
3
4
5
6
7
8
9
10
11
12
13
version: '3.4'
services:
verdaccio:
image: verdaccio/verdaccio:5.1 # 建议使用指定版本号。
container_name: 'my_npm'
environment:
- VERDACCIO_PORT=4873
ports:
- '80:4873'
volumes:
- './storage:/verdaccio/storage'
- './config:/verdaccio/conf'
- './plugins:/verdaccio/plugins'

使用 docker-compose up -d 创建容器。稍候打开 http://localhose:80 即可访问,

修改配置

修改 ./config/config.yaml 文件

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
storage: /verdaccio/storage
auth:
htpasswd:
file: /verdaccio/conf/htpasswd
max_users: -1 # 设置为-1 表示禁止注册 (建议一开始不设置,自己注册一个账号后再进行设置)
uplinks:
npmjs:
url: https://registry.npm.taobao.org/ # 如果安装包找不到时使用 taobao 源
packages:
# 指定组织的权限
'@company/*':
access: $authenticated # 登录用户可查看该组织的 package
publish: $authenticated
unpublish: $authenticated
proxy: npmjs # 前面设置的源文件地址
'@wuxh/*':
access: $all
publish: $authenticated
unpublish: $authenticated
proxy: npmjs
'**':
access: $all
publish: $authenticated
unpublish: $authenticated
proxy: npmjs
logs:
- { type: stdout, format: pretty, level: http }
web:
enable: true
title: Wuxh-npm
i18n:
web: zh-CN
publish:
allow_offline: false

参考文档

欢迎关注我的其它发布渠道