--- id: configuration date: 2017-07-10T23:36:56.503Z title: Configuration File --- Este archivo es la piedra angular de verdaccio donde puedes modificar su comportamiento por defecto, activar plugins y características externas. Cuando ejecutas por primera vez ` verdaccio` se crea un archivo de configuración por defecto. ## Configuración por Defecto La configuración por defecto tiene soporte para paquetes con **enfoque** y permite a los usuarios acceder a todos los paquetes pero solo **a los usuarios autentificados a publicarlos**. ```yaml 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} ``` ## Secciones Las siguientes secciones explican que significa cada propiedad y las diferentes configuraciones posibles. ### Almacenamiento Es la localización por defecto del almacenamiento. **Verdaccio esta basado por defecto en archivos locales de sistema**. ```yaml storage: ./storage ``` ### Autentificación The authentification set up is done here, the default auth is based on `htpasswd` and is built-in. Puedes modificar el comportamiento por defecto vía [extensiones](plugins.md). For more information about this section read the [auth page](auth.md). ```yaml 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.md). ```yaml 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.md). ```yaml uplinks: npmjs: url: https://registry.npmjs.org/ ``` ### Packages Packages allow the user how the packages are gonna be accessed. For more information about this section read the [packages page](packages.md). ```yaml packages: '@*/*': access: $all publish: $authenticated proxy: npmjs ``` ## Advanced Settings ### Offline Publish By default `verdaccio` does not allow to publish when the client is offline, that behavior can be overridden set it in to *true*. ```yaml publish: allow_offline: false ``` Since: v2.3.6 due #223 ### URL Prefix ```yaml url_prefix: https://dev.company.local/verdaccio/ ``` Since: *v2.3.6* due [#197](https://github.com/verdaccio/verdaccio/pull/197) ### Max Body Size By default the maximum body size for a JSON document is `1mb`, if you run in errors as `"request entity too large"` you may increase this value. ```yaml max_body_size: 1mb ``` ### Listen Port `verdaccio` runs by default in the port `4873`. Change the port can be done via [cli](cli.md) or in the configuration file, the following options are valid. ```yaml 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` enough with set your `listen` domain with the protocol *https://*. For more information about this section read the [ssl page](ssl.md). ```yaml https: key: path/to/server.key cert: path/to/server.crt ca: path/to/server.pem ``` ### Notifications Enable notifications to three party tools is fairly easy via web hooks. For more information about this section read the [notifications page](notifications.md). ```yaml 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"}' ```