* New translations config.md (Spanish) docs(website): new translations * New translations config.md (Chinese Simplified) docs(website): new translations * New translations config.md (Portuguese, Brazilian) docs(website): new translations * New translations logger.md (Chinese Simplified) docs(website): new translations * New translations notifications.md (Chinese Simplified) docs(website): new translations * New translations docker.md (Spanish) docs(website): new translations * New translations config.md (Spanish) docs(website): new translations * New translations docker.md (Chinese Simplified) docs(website): new translations * New translations config.md (Chinese Simplified) docs(website): new translations * New translations docker.md (Portuguese, Brazilian) docs(website): new translations * New translations config.md (Portuguese, Brazilian) docs(website): new translations
5 KiB
id | title |
---|---|
配置 | 配置文件 |
此文件是 Verdaccio 的重要部分, 您可以在其中修改默认行为, 启用插件并扩展功能。
一个默认的配置文件已经在您首次运行 Verdaccio
时创建。
默认配置
默认配置支持 ** 私有(scoped) ** 包, 并允许匿名访问非私有包, 但只有 ** 已登陆用户才能发布包**。
storage: ./storage
auth:
htpasswd:
file: ./htpasswd
uplinks:
npmjs:
url: https://registry.npmjs.org/
packages:
'@*/*':
access: $all
publish: $authenticated
proxy: npmjs
'**':
proxy: npmjs
logs:
- {type: stdout, format: pretty, level: http}
模块
The following sections explain what each property means and the different options.
存储
是默认的存储方式。** Verdaccio 默认使用内置本地文件模式存储 **。
storage: ./storage
Plugins
Is the location of the plugin directory. Useful for Docker/Kubernetes based deployments.
plugins: ./plugins
Authentification
The authentification set up is done here, the default auth is based on htpasswd
and is built-in. You can modify this behaviour via plugins. For more information about this section read the auth page.
auth:
htpasswd:
file: ./htpasswd
max_users: 1000
Web UI
This properties allow you to modify the look and feel of the web UI. For more information about this section read the web ui page.
web:
enable: true
title: Verdaccio
logo: logo.png
Uplinks
Uplinks is the ability of the system to fetch packages from remote registries when those packages are not available locally. For more information about this section read the uplinks page.
uplinks:
npmjs:
url: https://registry.npmjs.org/
Packages
Packages allow the user to control how the packages are gonna be accessed. For more information about this section read the packages page.
packages:
'@*/*':
access: $all
publish: $authenticated
proxy: npmjs
高级设置
Offline Publish
By default verdaccio
does not allow to publish when the client is offline, that behavior can be overridden by setting this to true.
publish:
allow_offline: false
Since: verdaccio@2.3.6
due #223
URL Prefix
url_prefix: https://dev.company.local/verdaccio/
Since: verdaccio@2.3.6
due #197
Max Body Size
By default the maximum body size for a JSON document is 10mb
, if you run in errors as "request entity too large"
you may increase this value.
max_body_size: 10mb
Listen Port
verdaccio
runs by default in the port 4873
. Changing the port can be done via cli or in the configuration file, the following options are valid.
listen:
# - localhost:4873 # default value
# - http://localhost:4873 # same thing
# - 0.0.0.0:4873 # listen on all addresses (INADDR_ANY)
# - https://example.org:4873 # if you want to use https
# - "[::1]:4873" # ipv6
# - unix:/tmp/verdaccio.sock # unix socket
HTTPS
To enable https
in verdaccio
it's enough to set the listen
flag with the protocol https://. For more information about this section read the ssl page.
https:
key: ./path/verdaccio-key.pem
cert: ./path/verdaccio-cert.pem
ca: ./path/verdaccio-csr.pem
Proxy
Proxies are special-purpose HTTP servers designed to transfer data from remote servers to local clients.
http_proxy and https_proxy
If you have a proxy in your network you can set a X-Forwarded-For
header using the following properties.
http_proxy: http://something.local/
https_proxy: https://something.local/
no_proxy
This variable should contain a comma-separated list of domain extensions proxy should not be used for.
no_proxy: localhost,127.0.0.1
Notifications
Enabling notifications to third-party tools is fairly easy via web hooks. For more information about this section read the notifications page.
notify:
method: POST
headers: [{'Content-Type': 'application/json'}]
endpoint: https://usagge.hipchat.com/v2/room/3729485/notification?auth_token=mySecretToken
content: '{"color":"green","message":"New package published: * {{ name }}*","notify":true,"message_format":"text"}'
有关更多配置设置的详细信息,请核对源代码。
Audit
Since: verdaccio@3.0.0
npm audit
is a new command released with npm 6.x. Verdaccio includes a built-in middleware plugin to handle this command.
新安装采用默认版本,但是您可以添加以下代码段到配置文件中
middlewares:
audit:
enabled: true