Verdaccio

安装

包管理器

npm
yarn
pnpm
bun
1npm install -g verdaccio

Docker

1docker pull verdaccio/verdaccio
2docker run -it --rm --name verdaccio -p 4873:4873 verdaccio/verdaccio

通过守护进程运行,添加 -d 参数:

1docker run -it -d --rm --name verdaccio -p 4873:4873 verdaccio/verdaccio

Docker Compose

1services:
2  verdaccio:
3    image: verdaccio/verdaccio
4    container_name: verdaccio
5    ports:
6      - '4873:4873'
7    volumes:
8      - './storage:/verdaccio/storage'
9      - './conf:/verdaccio/conf'
10    environment:
11      - VERDACCIO_PORT=4873
12      - VERDACCIO_PUBLIC_URL=
13volumes:
14  verdaccio:
15    driver: local

CLI

进入 Verdaccio 命令行:

1verdaccio

设置代理

全局设置代理

npm
yarn
pnpm
bun
1npm config set registry http://localhost:4873

指定库设置代理

npm
yarn
pnpm
bun
1npm install lodash --registry http://localhost:4873

使用 .npmrc 设置代理

全局设置代理:

.npmrc
1registry=http://localhost:4873

指定域设置代理:

.npmrc
1@domain:registry=http://localhost:4873

使用 .yarnrc 设置代理

.yarnrc
1registry "http://localhost:4873"

创建用户

1npm adduser --registry http://localhost:4873

登录私服

1npm login --registry http://localhost:4873

发布包至私服

package.json
1{
2  "publishConfig": {
3    "registry": "http://localhost:4873"
4  }
5}

使用 npm publish 发布包至私服:

1npm publish

部署

部署至公网、配置 SSL 证书可以参考如下仓库,将域名替换为需要部署的域名即可:

大致过程如下:

  1. 启动服务:Linux 服务器通过 Git 克隆仓库,如何通过 Docker Compose 启动 Verdaccio 服务。
  2. 配置 Nginx:为 Verdaccio 配置 Nginx 反向代理。
  3. 配置域名:通过 certbot 配置域名 SSL 证书。