mirror of
https://github.com/verdaccio/verdaccio.git
synced 2025-04-01 02:42:23 -05:00
docs: new Crowdin translations (#667)
docs: new Crowdin translations (#667)
This commit is contained in:
parent
64e72d5002
commit
27036df2f3
45 changed files with 598 additions and 283 deletions
|
@ -7,6 +7,7 @@
|
|||
"ansible": "Installing with Ansible",
|
||||
"authentification": "Authentification",
|
||||
"build": "Build the source code",
|
||||
"ci": "Continuous Integration",
|
||||
"cli": "Command Line Tool",
|
||||
"configuration": "Configuration File",
|
||||
"contributing": "Contributing Verdaccio",
|
||||
|
@ -34,6 +35,7 @@
|
|||
"Docs": "Docs",
|
||||
"Help": "Help",
|
||||
"Blog": "Blog",
|
||||
"GitHub": "GitHub",
|
||||
"Introduction": "Introduction",
|
||||
"Configuration": "Configuration",
|
||||
"Server": "Server",
|
||||
|
@ -57,7 +59,7 @@
|
|||
"and also you can chat with the Verdaccio community at|no description given": "and also you can chat with the Verdaccio community at",
|
||||
"More Help?|no description given": "More Help?",
|
||||
"This project is maintained by the Verdaccio community.|no description given": "This project is maintained by the Verdaccio community.",
|
||||
"Documentation": "Documentation",
|
||||
"Get Started|no description given": "Get Started",
|
||||
"Contribute|no description given": "Contribute",
|
||||
"Easy to Install|no description given": "Easy to Install",
|
||||
"Easy to Set Up|no description given": "Easy to Set Up",
|
||||
|
|
|
@ -7,6 +7,7 @@
|
|||
"ansible": "Installing with Ansible",
|
||||
"authentification": "Authentification",
|
||||
"build": "Build the source code",
|
||||
"ci": "Continuous Integration",
|
||||
"cli": "Command Line Tool",
|
||||
"configuration": "Configuration File",
|
||||
"contributing": "Contributing Verdaccio",
|
||||
|
@ -34,6 +35,7 @@
|
|||
"Docs": "Docs",
|
||||
"Help": "Help",
|
||||
"Blog": "Blog",
|
||||
"GitHub": "GitHub",
|
||||
"Introduction": "Introduction",
|
||||
"Configuration": "Configuration",
|
||||
"Server": "Server",
|
||||
|
@ -57,7 +59,7 @@
|
|||
"and also you can chat with the Verdaccio community at|no description given": "and also you can chat with the Verdaccio community at",
|
||||
"More Help?|no description given": "More Help?",
|
||||
"This project is maintained by the Verdaccio community.|no description given": "This project is maintained by the Verdaccio community.",
|
||||
"Documentation": "Documentation",
|
||||
"Get Started|no description given": "Get Started",
|
||||
"Contribute|no description given": "Contribute",
|
||||
"Easy to Install|no description given": "Easy to Install",
|
||||
"Easy to Set Up|no description given": "Easy to Set Up",
|
||||
|
|
|
@ -7,6 +7,7 @@
|
|||
"ansible": "Instalar con Ansible",
|
||||
"authentification": "Autentificación",
|
||||
"build": "Construir el código fuente",
|
||||
"ci": "Continuous Integration",
|
||||
"cli": "Herramienta de línea de comando",
|
||||
"configuration": "Archivo de Configuración",
|
||||
"contributing": "Contribuye a Verdaccio",
|
||||
|
@ -34,6 +35,7 @@
|
|||
"Docs": "Documentación",
|
||||
"Help": "Ayuda",
|
||||
"Blog": "Blog",
|
||||
"GitHub": "GitHub",
|
||||
"Introduction": "Introducción",
|
||||
"Configuration": "Configuración",
|
||||
"Server": "Servidor",
|
||||
|
@ -57,7 +59,7 @@
|
|||
"and also you can chat with the Verdaccio community at|no description given": "y también puedes hablar con nuestra comunidad en",
|
||||
"More Help?|no description given": "Mas Ayuda?",
|
||||
"This project is maintained by the Verdaccio community.|no description given": "Este proyecto es mantenido por la comunidad de Verdaccio.",
|
||||
"Documentation": "Documentación",
|
||||
"Get Started|no description given": "Get Started",
|
||||
"Contribute|no description given": "Contribuye",
|
||||
"Easy to Install|no description given": "Fácil de Instalar",
|
||||
"Easy to Set Up|no description given": "Fácil de Configurar",
|
||||
|
|
|
@ -7,6 +7,7 @@
|
|||
"ansible": "Installing with Ansible",
|
||||
"authentification": "Authentification",
|
||||
"build": "Build the source code",
|
||||
"ci": "Continuous Integration",
|
||||
"cli": "Command Line Tool",
|
||||
"configuration": "Configuration File",
|
||||
"contributing": "Contributing Verdaccio",
|
||||
|
@ -34,6 +35,7 @@
|
|||
"Docs": "Docs",
|
||||
"Help": "Help",
|
||||
"Blog": "Blog",
|
||||
"GitHub": "GitHub",
|
||||
"Introduction": "Introduction",
|
||||
"Configuration": "Configuration",
|
||||
"Server": "Server",
|
||||
|
@ -57,7 +59,7 @@
|
|||
"and also you can chat with the Verdaccio community at|no description given": "and also you can chat with the Verdaccio community at",
|
||||
"More Help?|no description given": "More Help?",
|
||||
"This project is maintained by the Verdaccio community.|no description given": "This project is maintained by the Verdaccio community.",
|
||||
"Documentation": "Documentation",
|
||||
"Get Started|no description given": "Get Started",
|
||||
"Contribute|no description given": "Contribute",
|
||||
"Easy to Install|no description given": "Easy to Install",
|
||||
"Easy to Set Up|no description given": "Easy to Set Up",
|
||||
|
|
|
@ -7,6 +7,7 @@
|
|||
"ansible": "Installing with Ansible",
|
||||
"authentification": "Authentification",
|
||||
"build": "Build the source code",
|
||||
"ci": "Continuous Integration",
|
||||
"cli": "Command Line Tool",
|
||||
"configuration": "Configuration File",
|
||||
"contributing": "Contributing Verdaccio",
|
||||
|
@ -34,6 +35,7 @@
|
|||
"Docs": "Docs",
|
||||
"Help": "Help",
|
||||
"Blog": "Blog",
|
||||
"GitHub": "GitHub",
|
||||
"Introduction": "Introduction",
|
||||
"Configuration": "Configuration",
|
||||
"Server": "Server",
|
||||
|
@ -57,7 +59,7 @@
|
|||
"and also you can chat with the Verdaccio community at|no description given": "and also you can chat with the Verdaccio community at",
|
||||
"More Help?|no description given": "More Help?",
|
||||
"This project is maintained by the Verdaccio community.|no description given": "This project is maintained by the Verdaccio community.",
|
||||
"Documentation": "Documentation",
|
||||
"Get Started|no description given": "Get Started",
|
||||
"Contribute|no description given": "Contribute",
|
||||
"Easy to Install|no description given": "Easy to Install",
|
||||
"Easy to Set Up|no description given": "Easy to Set Up",
|
||||
|
|
|
@ -7,6 +7,7 @@
|
|||
"ansible": "Instalação com Ansible",
|
||||
"authentification": "Autenticação",
|
||||
"build": "Usando a partir do codigo fonte",
|
||||
"ci": "Continuous Integration",
|
||||
"cli": "Utilitário da Linha de Comando",
|
||||
"configuration": "Arquivo de Configuração",
|
||||
"contributing": "Contribuindo com o Verdaccio",
|
||||
|
@ -34,6 +35,7 @@
|
|||
"Docs": "Docs",
|
||||
"Help": "Ajuda",
|
||||
"Blog": "Blog",
|
||||
"GitHub": "GitHub",
|
||||
"Introduction": "Introdução",
|
||||
"Configuration": "Configuração",
|
||||
"Server": "Servidor",
|
||||
|
@ -57,7 +59,7 @@
|
|||
"and also you can chat with the Verdaccio community at|no description given": "and also you can chat with the Verdaccio community at",
|
||||
"More Help?|no description given": "Precisa de Ajuda?",
|
||||
"This project is maintained by the Verdaccio community.|no description given": "Este projeto é mantido pela Comunidade Verdaccio.",
|
||||
"Documentation": "Documentação",
|
||||
"Get Started|no description given": "Get Started",
|
||||
"Contribute|no description given": "Contribuir",
|
||||
"Easy to Install|no description given": "Fácil de Instalar",
|
||||
"Easy to Set Up|no description given": "Fácil de Configurar",
|
||||
|
|
|
@ -7,6 +7,7 @@
|
|||
"ansible": "Installing with Ansible",
|
||||
"authentification": "Authentification",
|
||||
"build": "Build the source code",
|
||||
"ci": "Continuous Integration",
|
||||
"cli": "Command Line Tool",
|
||||
"configuration": "Configuration File",
|
||||
"contributing": "Contributing Verdaccio",
|
||||
|
@ -34,6 +35,7 @@
|
|||
"Docs": "Docs",
|
||||
"Help": "Help",
|
||||
"Blog": "Blog",
|
||||
"GitHub": "GitHub",
|
||||
"Introduction": "Introduction",
|
||||
"Configuration": "Configuration",
|
||||
"Server": "Server",
|
||||
|
@ -57,7 +59,7 @@
|
|||
"and also you can chat with the Verdaccio community at|no description given": "and also you can chat with the Verdaccio community at",
|
||||
"More Help?|no description given": "More Help?",
|
||||
"This project is maintained by the Verdaccio community.|no description given": "This project is maintained by the Verdaccio community.",
|
||||
"Documentation": "Documentation",
|
||||
"Get Started|no description given": "Get Started",
|
||||
"Contribute|no description given": "Contribute",
|
||||
"Easy to Install|no description given": "Easy to Install",
|
||||
"Easy to Set Up|no description given": "Easy to Set Up",
|
||||
|
|
|
@ -7,6 +7,7 @@
|
|||
"ansible": "انسیبل کے ساتھ تنصیب کریں ۔",
|
||||
"authentification": "اتھینتیکیشن",
|
||||
"build": "سورس کوڈ کو بلڈ کریں ۔",
|
||||
"ci": "Continuous Integration",
|
||||
"cli": "کمانڈ لائن ٹول",
|
||||
"configuration": "Configuration File",
|
||||
"contributing": "Contributing Verdaccio",
|
||||
|
@ -34,6 +35,7 @@
|
|||
"Docs": "Docs",
|
||||
"Help": "Help",
|
||||
"Blog": "Blog",
|
||||
"GitHub": "GitHub",
|
||||
"Introduction": "Introduction",
|
||||
"Configuration": "Configuration",
|
||||
"Server": "Server",
|
||||
|
@ -57,7 +59,7 @@
|
|||
"and also you can chat with the Verdaccio community at|no description given": "and also you can chat with the Verdaccio community at",
|
||||
"More Help?|no description given": "More Help?",
|
||||
"This project is maintained by the Verdaccio community.|no description given": "This project is maintained by the Verdaccio community.",
|
||||
"Documentation": "Documentation",
|
||||
"Get Started|no description given": "Get Started",
|
||||
"Contribute|no description given": "Contribute",
|
||||
"Easy to Install|no description given": "Easy to Install",
|
||||
"Easy to Set Up|no description given": "Easy to Set Up",
|
||||
|
|
|
@ -7,6 +7,7 @@
|
|||
"ansible": "使用 Ansible 安装",
|
||||
"authentification": "认证",
|
||||
"build": "编译源代码",
|
||||
"ci": "Continuous Integration",
|
||||
"cli": "命令行工具",
|
||||
"configuration": "配置文件",
|
||||
"contributing": "参与贡献 Verdaccio",
|
||||
|
@ -34,6 +35,7 @@
|
|||
"Docs": "文档",
|
||||
"Help": "帮助",
|
||||
"Blog": "博客",
|
||||
"GitHub": "GitHub",
|
||||
"Introduction": "介绍",
|
||||
"Configuration": "配置",
|
||||
"Server": "服务器",
|
||||
|
@ -57,7 +59,7 @@
|
|||
"and also you can chat with the Verdaccio community at|no description given": "你也可以在这里与 Verdaccio 社区交流",
|
||||
"More Help?|no description given": "需要更多帮助?",
|
||||
"This project is maintained by the Verdaccio community.|no description given": "这个项目由 Verdaccio 社区维护。",
|
||||
"Documentation": "文档",
|
||||
"Get Started|no description given": "Get Started",
|
||||
"Contribute|no description given": "贡献",
|
||||
"Easy to Install|no description given": "易于安装",
|
||||
"Easy to Set Up|no description given": "易于设置",
|
||||
|
|
|
@ -2,12 +2,18 @@
|
|||
id: docker
|
||||
title: Docker
|
||||
---
|
||||
<div class="docker-count">
|
||||

|
||||
</div>
|
||||
|
||||
To pull the latest pre-built [docker image](https://hub.docker.com/r/verdaccio/verdaccio/):
|
||||
|
||||
```bash
|
||||
docker pull verdaccio/verdaccio
|
||||
```
|
||||
|
||||

|
||||
|
||||
## Tagged Versions
|
||||
|
||||
Since version `v2.x` you can pull docker images by [tag](https://hub.docker.com/r/verdaccio/verdaccio/tags/), as follows:
|
||||
|
@ -59,7 +65,7 @@ V_PATH=/path/for/verdaccio; docker run -it --rm --name verdaccio -p 4873:4873 \
|
|||
verdaccio/verdaccio
|
||||
```
|
||||
|
||||
> Note: Verdaccio runs as a non-root user (uid=101, gid=101) inside the container, if you use bind mount to override default, you need to make sure the mount directory is assigned to the right user. In above example, you need to run `sudo chown -R 101:101 /opt/verdaccio` otherwise you will get permission errors at runtime. [Use docker volume](https://docs.docker.com/storage/volumes/) is recommended over using bind mount.
|
||||
> Note: Verdaccio runs as a non-root user (uid=100, gid=101) inside the container, if you use bind mount to override default, you need to make sure the mount directory is assigned to the right user. In above example, you need to run `sudo chown -R 100:101 /opt/verdaccio` otherwise you will get permission errors at runtime. [Use docker volume](https://docs.docker.com/storage/volumes/) is recommended over using bind mount.
|
||||
|
||||
### Docker and custom port configuration
|
||||
|
||||
|
|
|
@ -28,6 +28,8 @@ or using `yarn`
|
|||
yarn global add verdaccio
|
||||
```
|
||||
|
||||

|
||||
|
||||
### Beta
|
||||
|
||||
⚠️⚠️ **Help us to test the version 3.x in order to release a stable version soon. Remember, to do never test with your original storage folder, do always a backup** ⚠️⚠️
|
||||
|
|
|
@ -25,23 +25,24 @@ uplinks:
|
|||
|
||||
You can define mutiple uplinks and each of them must have an unique name (key). They can have two properties:
|
||||
|
||||
| Property | Type | Required | Example | Support | Description | Default |
|
||||
| ------------ | ------- | -------- | ----------------------------------------------------------------------------------- | ------- | ------------------------------------------------------------------------------------------------------------------ | ---------- |
|
||||
| url | string | Yes | https://registry.npmjs.org/ | all | The registry url | npmjs |
|
||||
| ca | string | No | ~./ssl/client.crt' | all | SSL path certificate | No default |
|
||||
| timeout | string | No | 100ms | all | set new timeout for the request | 30s |
|
||||
| maxage | string | No | 10m | all | limit maximun failure request | 2m |
|
||||
| fail_timeout | string | No | 10m | all | defines max time when a request becomes a failure | 5m |
|
||||
| max_fails | number | No | 2 | all | limit maximun failure request | 2 |
|
||||
| cache | boolean | No | [true,false] | >= 2.1 | avoid cache tarballs | true |
|
||||
| auth | list | No | type: [bearer,basic], [token: "token",token_env: [true,\<get name process.env\>]] | >= 2.5 | assigns the header 'Authorization' see: http://blog.npmjs.org/post/118393368555/deploying-with-npm-private-modules | disabled |
|
||||
| headers | list | No | authorization: "Basic YourBase64EncodedCredentials==" | all | list of custom headers for the uplink | disabled |
|
||||
| strict_ssl | boolean | No | [true,false] | >= 3.0 | If true, requires SSL certificates be valid. | true |
|
||||
| Property | Type | Required | Example | Support | Description | Default |
|
||||
| ------------ | ------- | -------- | ----------------------------------------------------------------------------- | ------- | ------------------------------------------------------------------------------------------------------------------ | ---------- |
|
||||
| url | string | Yes | https://registry.npmjs.org/ | all | The registry url | npmjs |
|
||||
| ca | string | No | ~./ssl/client.crt' | all | SSL path certificate | No default |
|
||||
| timeout | string | No | 100ms | all | set new timeout for the request | 30s |
|
||||
| maxage | string | No | 10m | all | limit maximun failure request | 2m |
|
||||
| fail_timeout | string | No | 10m | all | defines max time when a request becomes a failure | 5m |
|
||||
| max_fails | number | No | 2 | all | limit maximun failure request | 2 |
|
||||
| cache | boolean | No | [true,false] | >= 2.1 | avoid cache tarballs | true |
|
||||
| auth | list | No | type: [bearer], [token: "token",token_env: [true,\<get name process.env\>]] | >= 2.5 | assigns the header 'Authorization' see: http://blog.npmjs.org/post/118393368555/deploying-with-npm-private-modules | disabled |
|
||||
| headers | list | No | authorization: "Bearer SecretJWToken==" | all | list of custom headers for the uplink | disabled |
|
||||
| strict_ssl | boolean | No | [true,false] | >= 3.0 | If true, requires SSL certificates be valid. | true |
|
||||
|
||||
> The `auth` property allows you to use a auth token via an environment variable, [clik here for an example](https://github.com/verdaccio/verdaccio/releases/tag/v2.5.0).
|
||||
|
||||
### You Must know
|
||||
|
||||
* Verdaccio does not use Basic Authentication since version `v2.3.0`. All tokens generated by verdaccio are based on JWT ([JSON Web Token](https://jwt.io/))
|
||||
* Uplinks must be registries compatible with the `npm` endpoints. Eg: *verdaccio*, `sinopia@1.4.0`, *npmjs registry*, *yarn registry*, *JFrog*, *Nexus* and more.
|
||||
* Setting `cache` to false will help to save space in your hard drive. This will avoid store `tarballs` but [it will keep metadata in folders](https://github.com/verdaccio/verdaccio/issues/391).
|
||||
* Exceed with multiple uplinks might slow down the lookup of your packages due for each request a npm client does, verdaccio does 1 call for each uplink.
|
||||
|
|
|
@ -2,7 +2,44 @@
|
|||
id: what-is-verdaccio
|
||||
title: "What is Verdaccio?"
|
||||
---
|
||||
## In a nutshell
|
||||
Verdaccio is a **lightweight private npm proxy registry** built in **Node.js**
|
||||
|
||||
## What's a registry
|
||||
|
||||
* A repository for packages that implements the **CommonJS Compliant Package Registry specification** for reading package info
|
||||
* Provide an API compatible with npm clients **(yarn/npm/pnpm)**
|
||||
* Follow the semantic Versioning compatible **(semver)**
|
||||
|
||||
$> verdaccio
|
||||
|
||||
|
||||

|
||||
|
||||
## Using Verdaccio
|
||||
|
||||
Using verdaccio with any node package manager client is quite straightforward.
|
||||
|
||||

|
||||
|
||||
You can use a custom registry either setting globally for all your projects
|
||||
|
||||
npm set registry http://localhost:4873
|
||||
|
||||
|
||||
or by command line as argument `--registry` in npm (slightly different in yarn)
|
||||
|
||||
npm install lodash --registry http://localhost:4873
|
||||
|
||||
|
||||
## Private
|
||||
|
||||
All packages that you publish are private and only accessible based in your configuration.
|
||||
|
||||
## Proxy
|
||||
|
||||
Verdaccio cache all dependencies by demand and speed up installations in local or private networks.
|
||||
|
||||
## Verdaccio in a nutshell
|
||||
|
||||
* It's a web app based on Node.js
|
||||
* It's a private npm registry
|
||||
|
@ -11,18 +48,5 @@ title: "What is Verdaccio?"
|
|||
* It's a fairly easy install and use
|
||||
* We offer Docker and Kubernetes support
|
||||
* It is 100% compatible with yarn, npm and pnpm
|
||||
* It was born based on `sinopia@1.4.0` fork and *backward compatible*
|
||||
* Verdaccio means **A green color popular in late medieval Italy for fresco painting**.
|
||||
|
||||
## What's a registry
|
||||
|
||||
* A repository for packages that implements the CommonJS Compliant Package Registry specification for reading package info
|
||||
* Store npm packages
|
||||
* Provide an API compatible with npm clients
|
||||
* Semantic Versioning (semver) compatible
|
||||
|
||||
```bash curl -v https://registry.npmjs.org/aaa
|
||||
|
||||
* Connected to registry.npmjs.org (151.101.12.162) port 443 (#0)
|
||||
|
||||
* Connection #0 to host registry.npmjs.org left intact {"_id":"aaa","_rev":"6-ad86dfc8720569871753b5bf561f2741","name":"aaa","description":"aaa...","dist-tags":{"latest":"0.0.2"},"versions":{"0.0.1":{"name":"aaa","version":"0.0.1","description":"aaa...","main":"index.js","scripts":{"test":"test.js"},"repository":{"type":"git","url":"http:/www.google.git"},"keywords":["math"],"author":{"name":"peter"},"license":"BSD","_id":"aaa@0.0.1","dist": {"shasum":"a04fa88ad887a70dd5429652ce23823619dfd7c3","tarball":"https://registry.npmjs.org/aaa/-/aaa-0.0.1.tgz"},"_npmVersion":"1.1.62","_npmUser":{"name":"erhu65","email":"erhu65@gmail.com"},"maintainers":[{"name":"erhu65","email":"erhu65@gmail.com"}],"directories":{}},"0.0.2":{"name":"aaa","version":"0.0.2","description":"aaa...","main":"index.js","scripts":{"test":"test.js"},"repository":{"type":"git","url":"http:/www.google.git"},"keywords":["math"],"author":{"name":"peter"},"license":"BSD","_id":"aaa@0.0.2","dist": {"shasum":"acd2f632b94b0f89765e75bb7b7549ce5b01caa2","tarball":"https://registry.npmjs.org/aaa/-/aaa-0.0.2.tgz"},"_npmVersion":"1.1.62","_npmUser":{"name":"erhu65","email":"erhu65@gmail.com"},"maintainers":[{"name":"erhu65","email":"erhu65@gmail.com"}],"directories":{}}},"readme":"ERROR: No README.md file found!","maintainers":[{"name":"erhu65","email":"erhu65@gmail.com"}],"timmacbook-j:verdaccio.mmacbookmacbook-j:verdaccio.master.git jpicmacbook-j:verdaccio.master.git jpicmacbookmacbookmacbookmacbookmacbook ````
|
||||
* It was **forked** based on `sinopia@1.4.0` and 100% **backward compatible**.
|
||||
* Verdaccio means **A green color popular in late medieval Italy for fresco painting**.
|
|
@ -2,12 +2,18 @@
|
|||
id: docker
|
||||
title: Docker
|
||||
---
|
||||
<div class="docker-count">
|
||||

|
||||
</div>
|
||||
|
||||
To pull the latest pre-built [docker image](https://hub.docker.com/r/verdaccio/verdaccio/):
|
||||
|
||||
```bash
|
||||
docker pull verdaccio/verdaccio
|
||||
```
|
||||
|
||||

|
||||
|
||||
## Tagged Versions
|
||||
|
||||
Since version `v2.x` you can pull docker images by [tag](https://hub.docker.com/r/verdaccio/verdaccio/tags/), as follows:
|
||||
|
@ -59,7 +65,7 @@ V_PATH=/path/for/verdaccio; docker run -it --rm --name verdaccio -p 4873:4873 \
|
|||
verdaccio/verdaccio
|
||||
```
|
||||
|
||||
> Note: Verdaccio runs as a non-root user (uid=101, gid=101) inside the container, if you use bind mount to override default, you need to make sure the mount directory is assigned to the right user. In above example, you need to run `sudo chown -R 101:101 /opt/verdaccio` otherwise you will get permission errors at runtime. [Use docker volume](https://docs.docker.com/storage/volumes/) is recommended over using bind mount.
|
||||
> Note: Verdaccio runs as a non-root user (uid=100, gid=101) inside the container, if you use bind mount to override default, you need to make sure the mount directory is assigned to the right user. In above example, you need to run `sudo chown -R 100:101 /opt/verdaccio` otherwise you will get permission errors at runtime. [Use docker volume](https://docs.docker.com/storage/volumes/) is recommended over using bind mount.
|
||||
|
||||
### Docker and custom port configuration
|
||||
|
||||
|
|
|
@ -28,6 +28,8 @@ or using `yarn`
|
|||
yarn global add verdaccio
|
||||
```
|
||||
|
||||

|
||||
|
||||
### Beta
|
||||
|
||||
⚠️⚠️ **Help us to test the version 3.x in order to release a stable version soon. Remember, to do never test with your original storage folder, do always a backup** ⚠️⚠️
|
||||
|
|
|
@ -25,23 +25,24 @@ uplinks:
|
|||
|
||||
You can define mutiple uplinks and each of them must have an unique name (key). They can have two properties:
|
||||
|
||||
| Property | Type | Required | Example | Support | Description | Default |
|
||||
| ------------ | ------- | -------- | ----------------------------------------------------------------------------------- | ------- | ------------------------------------------------------------------------------------------------------------------ | ---------- |
|
||||
| url | string | Yes | https://registry.npmjs.org/ | all | The registry url | npmjs |
|
||||
| ca | string | No | ~./ssl/client.crt' | all | SSL path certificate | No default |
|
||||
| timeout | string | No | 100ms | all | set new timeout for the request | 30s |
|
||||
| maxage | string | No | 10m | all | limit maximun failure request | 2m |
|
||||
| fail_timeout | string | No | 10m | all | defines max time when a request becomes a failure | 5m |
|
||||
| max_fails | number | No | 2 | all | limit maximun failure request | 2 |
|
||||
| cache | boolean | No | [true,false] | >= 2.1 | avoid cache tarballs | true |
|
||||
| auth | list | No | type: [bearer,basic], [token: "token",token_env: [true,\<get name process.env\>]] | >= 2.5 | assigns the header 'Authorization' see: http://blog.npmjs.org/post/118393368555/deploying-with-npm-private-modules | disabled |
|
||||
| headers | list | No | authorization: "Basic YourBase64EncodedCredentials==" | all | list of custom headers for the uplink | disabled |
|
||||
| strict_ssl | boolean | No | [true,false] | >= 3.0 | If true, requires SSL certificates be valid. | true |
|
||||
| Property | Type | Required | Example | Support | Description | Default |
|
||||
| ------------ | ------- | -------- | ----------------------------------------------------------------------------- | ------- | ------------------------------------------------------------------------------------------------------------------ | ---------- |
|
||||
| url | string | Yes | https://registry.npmjs.org/ | all | The registry url | npmjs |
|
||||
| ca | string | No | ~./ssl/client.crt' | all | SSL path certificate | No default |
|
||||
| timeout | string | No | 100ms | all | set new timeout for the request | 30s |
|
||||
| maxage | string | No | 10m | all | limit maximun failure request | 2m |
|
||||
| fail_timeout | string | No | 10m | all | defines max time when a request becomes a failure | 5m |
|
||||
| max_fails | number | No | 2 | all | limit maximun failure request | 2 |
|
||||
| cache | boolean | No | [true,false] | >= 2.1 | avoid cache tarballs | true |
|
||||
| auth | list | No | type: [bearer], [token: "token",token_env: [true,\<get name process.env\>]] | >= 2.5 | assigns the header 'Authorization' see: http://blog.npmjs.org/post/118393368555/deploying-with-npm-private-modules | disabled |
|
||||
| headers | list | No | authorization: "Bearer SecretJWToken==" | all | list of custom headers for the uplink | disabled |
|
||||
| strict_ssl | boolean | No | [true,false] | >= 3.0 | If true, requires SSL certificates be valid. | true |
|
||||
|
||||
> The `auth` property allows you to use a auth token via an environment variable, [clik here for an example](https://github.com/verdaccio/verdaccio/releases/tag/v2.5.0).
|
||||
|
||||
### You Must know
|
||||
|
||||
* Verdaccio does not use Basic Authentication since version `v2.3.0`. All tokens generated by verdaccio are based on JWT ([JSON Web Token](https://jwt.io/))
|
||||
* Uplinks must be registries compatible with the `npm` endpoints. Eg: *verdaccio*, `sinopia@1.4.0`, *npmjs registry*, *yarn registry*, *JFrog*, *Nexus* and more.
|
||||
* Setting `cache` to false will help to save space in your hard drive. This will avoid store `tarballs` but [it will keep metadata in folders](https://github.com/verdaccio/verdaccio/issues/391).
|
||||
* Exceed with multiple uplinks might slow down the lookup of your packages due for each request a npm client does, verdaccio does 1 call for each uplink.
|
||||
|
|
|
@ -2,7 +2,44 @@
|
|||
id: what-is-verdaccio
|
||||
title: "What is Verdaccio?"
|
||||
---
|
||||
## In a nutshell
|
||||
Verdaccio is a **lightweight private npm proxy registry** built in **Node.js**
|
||||
|
||||
## What's a registry
|
||||
|
||||
* A repository for packages that implements the **CommonJS Compliant Package Registry specification** for reading package info
|
||||
* Provide an API compatible with npm clients **(yarn/npm/pnpm)**
|
||||
* Follow the semantic Versioning compatible **(semver)**
|
||||
|
||||
$> verdaccio
|
||||
|
||||
|
||||

|
||||
|
||||
## Using Verdaccio
|
||||
|
||||
Using verdaccio with any node package manager client is quite straightforward.
|
||||
|
||||

|
||||
|
||||
You can use a custom registry either setting globally for all your projects
|
||||
|
||||
npm set registry http://localhost:4873
|
||||
|
||||
|
||||
or by command line as argument `--registry` in npm (slightly different in yarn)
|
||||
|
||||
npm install lodash --registry http://localhost:4873
|
||||
|
||||
|
||||
## Private
|
||||
|
||||
All packages that you publish are private and only accessible based in your configuration.
|
||||
|
||||
## Proxy
|
||||
|
||||
Verdaccio cache all dependencies by demand and speed up installations in local or private networks.
|
||||
|
||||
## Verdaccio in a nutshell
|
||||
|
||||
* It's a web app based on Node.js
|
||||
* It's a private npm registry
|
||||
|
@ -11,18 +48,5 @@ title: "What is Verdaccio?"
|
|||
* It's a fairly easy install and use
|
||||
* We offer Docker and Kubernetes support
|
||||
* It is 100% compatible with yarn, npm and pnpm
|
||||
* It was born based on `sinopia@1.4.0` fork and *backward compatible*
|
||||
* Verdaccio means **A green color popular in late medieval Italy for fresco painting**.
|
||||
|
||||
## What's a registry
|
||||
|
||||
* A repository for packages that implements the CommonJS Compliant Package Registry specification for reading package info
|
||||
* Store npm packages
|
||||
* Provide an API compatible with npm clients
|
||||
* Semantic Versioning (semver) compatible
|
||||
|
||||
```bash curl -v https://registry.npmjs.org/aaa
|
||||
|
||||
* Connected to registry.npmjs.org (151.101.12.162) port 443 (#0)
|
||||
|
||||
* Connection #0 to host registry.npmjs.org left intact {"_id":"aaa","_rev":"6-ad86dfc8720569871753b5bf561f2741","name":"aaa","description":"aaa...","dist-tags":{"latest":"0.0.2"},"versions":{"0.0.1":{"name":"aaa","version":"0.0.1","description":"aaa...","main":"index.js","scripts":{"test":"test.js"},"repository":{"type":"git","url":"http:/www.google.git"},"keywords":["math"],"author":{"name":"peter"},"license":"BSD","_id":"aaa@0.0.1","dist": {"shasum":"a04fa88ad887a70dd5429652ce23823619dfd7c3","tarball":"https://registry.npmjs.org/aaa/-/aaa-0.0.1.tgz"},"_npmVersion":"1.1.62","_npmUser":{"name":"erhu65","email":"erhu65@gmail.com"},"maintainers":[{"name":"erhu65","email":"erhu65@gmail.com"}],"directories":{}},"0.0.2":{"name":"aaa","version":"0.0.2","description":"aaa...","main":"index.js","scripts":{"test":"test.js"},"repository":{"type":"git","url":"http:/www.google.git"},"keywords":["math"],"author":{"name":"peter"},"license":"BSD","_id":"aaa@0.0.2","dist": {"shasum":"acd2f632b94b0f89765e75bb7b7549ce5b01caa2","tarball":"https://registry.npmjs.org/aaa/-/aaa-0.0.2.tgz"},"_npmVersion":"1.1.62","_npmUser":{"name":"erhu65","email":"erhu65@gmail.com"},"maintainers":[{"name":"erhu65","email":"erhu65@gmail.com"}],"directories":{}}},"readme":"ERROR: No README.md file found!","maintainers":[{"name":"erhu65","email":"erhu65@gmail.com"}],"timmacbook-j:verdaccio.mmacbookmacbook-j:verdaccio.master.git jpicmacbook-j:verdaccio.master.git jpicmacbookmacbookmacbookmacbookmacbook ````
|
||||
* It was **forked** based on `sinopia@1.4.0` and 100% **backward compatible**.
|
||||
* Verdaccio means **A green color popular in late medieval Italy for fresco painting**.
|
|
@ -2,15 +2,21 @@
|
|||
id: docker
|
||||
title: Docker
|
||||
---
|
||||
<div class="docker-count">
|
||||

|
||||
</div>
|
||||
|
||||
Para descargar la última [imagen de Docker](https://hub.docker.com/r/verdaccio/verdaccio/):
|
||||
|
||||
```bash
|
||||
docker pull verdaccio/verdaccio
|
||||
```
|
||||
|
||||

|
||||
|
||||
## Versiones con Etiquetas
|
||||
|
||||
A partir de la versión `v2.x` puedes descargar imagenes de docker por [tag](https://hub.docker.com/r/verdaccio/verdaccio/tags/), como a continuación:
|
||||
Desde la versión `` puedes obtener imagenes de docker por [tag](https://hub.docker.com/r/verdaccio/verdaccio/tags/), de la siguiente manera:
|
||||
|
||||
Para usar una versión "major":
|
||||
|
||||
|
@ -24,13 +30,13 @@ Para usar una versión "minor":
|
|||
docker pull verdaccio/verdaccio:2.1
|
||||
```
|
||||
|
||||
Para usar una versión mas específica ("patch"):
|
||||
Para un (parche) especifico:
|
||||
|
||||
```bash
|
||||
docker pull verdaccio/verdaccio:2.1.7
|
||||
```
|
||||
|
||||
For the next major release using the `beta` (`v.3.x`) version.
|
||||
Para el próximo mayor lanzamiento usando la versión `beta` (`v.3.x`).
|
||||
|
||||
```bash
|
||||
docker pull verdaccio/verdaccio:beta
|
||||
|
@ -40,13 +46,13 @@ docker pull verdaccio/verdaccio:beta
|
|||
|
||||
## Ejecutando verdaccio usando Docker
|
||||
|
||||
To run the docker container:
|
||||
Para ejecutar el contenedor docker:
|
||||
|
||||
```bash
|
||||
docker run -it --rm --name verdaccio -p 4873:4873 verdaccio/verdaccio
|
||||
```
|
||||
|
||||
The last argument defines which image to use. The above line will pull the latest prebuilt image from dockerhub, if you haven't done that already.
|
||||
El último argumento define cual imagen se usa. En la linea de abajo se descargará la ultima imagen desde Docker Hub, si no existía previamente.
|
||||
|
||||
If you have [build an image locally](#build-your-own-docker-image) use `verdaccio` as the last argument.
|
||||
|
||||
|
@ -59,7 +65,7 @@ V_PATH=/path/for/verdaccio; docker run -it --rm --name verdaccio -p 4873:4873 \
|
|||
verdaccio/verdaccio
|
||||
```
|
||||
|
||||
> Note: Verdaccio runs as a non-root user (uid=101, gid=101) inside the container, if you use bind mount to override default, you need to make sure the mount directory is assigned to the right user. In above example, you need to run `sudo chown -R 101:101 /opt/verdaccio` otherwise you will get permission errors at runtime. [Use docker volume](https://docs.docker.com/storage/volumes/) is recommended over using bind mount.
|
||||
> Note: Verdaccio runs as a non-root user (uid=100, gid=101) inside the container, if you use bind mount to override default, you need to make sure the mount directory is assigned to the right user. In above example, you need to run `sudo chown -R 100:101 /opt/verdaccio` otherwise you will get permission errors at runtime. [Use docker volume](https://docs.docker.com/storage/volumes/) is recommended over using bind mount.
|
||||
|
||||
### Usar un puerto personalizado con Docker
|
||||
|
||||
|
|
|
@ -28,6 +28,8 @@ o usando `yarn`
|
|||
yarn global add verdaccio
|
||||
```
|
||||
|
||||

|
||||
|
||||
### Beta
|
||||
|
||||
⚠️⚠️ **Help us to test the version 3.x in order to release a stable version soon. Remember, to do never test with your original storage folder, do always a backup** ⚠️⚠️
|
||||
|
|
|
@ -25,24 +25,25 @@ uplinks:
|
|||
|
||||
Puedes definir múltiples uplinks y cada uno de ellos debe tener un nombre único (key). Pueden tener las siguientes propiedades:
|
||||
|
||||
| Propiedad | Tipo | Requerido | Ejemplo | Soporte | Descripción | Por Defecto |
|
||||
| ------------ | ------- | --------- | ----------------------------------------------------------------------------------- | ------- | -------------------------------------------------------------------------------------------------------------------- | ----------- |
|
||||
| url | string | Yes | https://registry.npmjs.org/ | all | El dominio del registro | npmjs |
|
||||
| ca | string | No | ~./ssl/client.crt' | all | Ubicación del certificado SSL | Desactivado |
|
||||
| timeout | string | No | 100ms | all | timeout por petición | 30s |
|
||||
| maxage | string | No | 10m | all | limite máximo de fallos de cada petición | 2m |
|
||||
| fail_timeout | string | No | 10m | all | define el tiempo máximo cuando una petición falla | 5m |
|
||||
| max_fails | number | No | 2 | all | límite máximo de fallos | 2 |
|
||||
| cache | boolean | No | [true,false] | >= 2.1 | evita persistir tarballs | true |
|
||||
| auth | list | No | type: [bearer,basic], [token: "token",token_env: [true,\<get name process.env\>]] | >= 2.5 | asigna el encamezado 'Authorization' ver: http://blog.npmjs.org/post/118393368555/deploying-with-npm-private-modules | desactivado |
|
||||
| headers | list | No | authorization: "Basic YourBase64EncodedCredentials==" | all | listado de encabezados por uplink | desactivado |
|
||||
| strict_ssl | boolean | No | [true,false] | >= 3.0 | Es verdadero, requiere que el certificado SSL sea válido. | true |
|
||||
| Propiedad | Tipo | Requerido | Ejemplo | Soporte | Descripción | Por Defecto |
|
||||
| ------------ | ------- | --------- | ----------------------------------------------------------------------------- | ------- | -------------------------------------------------------------------------------------------------------------------- | ----------- |
|
||||
| url | string | Yes | https://registry.npmjs.org/ | all | El dominio del registro | npmjs |
|
||||
| ca | string | No | ~./ssl/client.crt' | all | Ubicación del certificado SSL | Desactivado |
|
||||
| timeout | string | No | 100ms | all | timeout por petición | 30s |
|
||||
| maxage | string | No | 10m | all | limite máximo de fallos de cada petición | 2m |
|
||||
| fail_timeout | string | No | 10m | all | define el tiempo máximo cuando una petición falla | 5m |
|
||||
| max_fails | number | No | 2 | all | límite máximo de fallos | 2 |
|
||||
| cache | boolean | No | [true,false] | >= 2.1 | evita persistir tarballs | true |
|
||||
| auth | list | No | type: [bearer], [token: "token",token_env: [true,\<get name process.env\>]] | >= 2.5 | asigna el encamezado 'Authorization' ver: http://blog.npmjs.org/post/118393368555/deploying-with-npm-private-modules | desactivado |
|
||||
| headers | list | No | authorization: "Bearer SecretJWToken==" | all | listado de encabezados por uplink | desactivado |
|
||||
| strict_ssl | boolean | No | [true,false] | >= 3.0 | Es verdadero, requiere que el certificado SSL sea válido. | true |
|
||||
|
||||
> La propiedad ` auth` te permite usar token te autenticación vía variables de entorno, [haz click aqui para ver un ejemplo](https://github.com/verdaccio/verdaccio/releases/tag/v2.5.0).
|
||||
|
||||
### Debes saber
|
||||
|
||||
* Uplinks deben ser compatibles con los *endpoints* de `npm`. Ejemplo: *verdaccio*, `sinopia@1.4.0`, *npmjs registry*, *yarn registry*, *JFrog*, *Nexus* y más.
|
||||
* Definiendo `cache` a falso ayudará a salvar espacio en tu disco duro. Esto evitará almacenar `tarballs` pero [mantendrá metadatos en los folders](https://github.com/verdaccio/verdaccio/issues/391).
|
||||
* Excederse con muchos uplinks podría afectar el performance al momento de resolver paquetes por cada request que el cliente npm ejecuta, verdaccio hace 1 llamada por cada uplink.
|
||||
* Los parametros (timeout, maxage and fail_timeout) siguen el formato de [NGINX measurement units](http://nginx.org/en/docs/syntax.html)
|
||||
* Verdaccio does not use Basic Authentication since version `v2.3.0`. All tokens generated by verdaccio are based on JWT ([JSON Web Token](https://jwt.io/))
|
||||
* Uplinks must be registries compatible with the `npm` endpoints. Eg: *verdaccio*, `sinopia@1.4.0`, *npmjs registry*, *yarn registry*, *JFrog*, *Nexus* and more.
|
||||
* Setting `cache` to false will help to save space in your hard drive. This will avoid store `tarballs` but [it will keep metadata in folders](https://github.com/verdaccio/verdaccio/issues/391).
|
||||
* Exceed with multiple uplinks might slow down the lookup of your packages due for each request a npm client does, verdaccio does 1 call for each uplink.
|
||||
* The (timeout, maxage and fail_timeout) format follow the [NGINX measurement units](http://nginx.org/en/docs/syntax.html)
|
|
@ -2,27 +2,51 @@
|
|||
id: what-is-verdaccio
|
||||
title: "Qué es Verdaccio?"
|
||||
---
|
||||
## En pocas palabras
|
||||
|
||||
* Es una aplicación web basada en Node.js
|
||||
* Es un registro de npm privado
|
||||
* Es un servidor proxy local
|
||||
* Es una aplicación que se puede extender
|
||||
* Es muy fácil de usar e instalar
|
||||
* Ofrecemos soporte en Docker y Kubernetes
|
||||
* Es 100% compatible con yarn, npm y pnpm
|
||||
* Proyecto que nació basado en una bifurcación de `sinopia@1.4.0` y completamente compatible
|
||||
* Verdaccio significa **Un color verde popular en la Italia medieval para la pintura en fresco**.
|
||||
Verdacio es un **ligero registry privado y proxy**hecho en **Node.js**
|
||||
|
||||
## Qué es un registro
|
||||
|
||||
* Es un repositorio para paquetes que implementan la especificación CommonJS para la lectura de información de paquetes
|
||||
* Almacena paquetes de Node
|
||||
* Provee un API compatible con clientes npm
|
||||
* Compatible con (semver) Versionado Semántico
|
||||
* Un repositorio de paquetes que implementan la espcificación **CommonJS Compliant Package Registry specification** para la lectura de información de paquetes
|
||||
* Provee un API compatible con clientes npm **(yarn/npm/pnpm)**
|
||||
* Compatible con el versionado semantico **(semver)**
|
||||
|
||||
```bash curl -v https://registry.npmjs.org/aaa
|
||||
$> verdaccio
|
||||
|
||||
|
||||
* Connected to registry.npmjs.org (151.101.12.162) port 443 (#0)
|
||||

|
||||
|
||||
* Connection #0 to host registry.npmjs.org left intact {"_id":"aaa","_rev":"6-ad86dfc8720569871753b5bf561f2741","name":"aaa","description":"aaa...","dist-tags":{"latest":"0.0.2"},"versions":{"0.0.1":{"name":"aaa","version":"0.0.1","description":"aaa...","main":"index.js","scripts":{"test":"test.js"},"repository":{"type":"git","url":"http:/www.google.git"},"keywords":["math"],"author":{"name":"peter"},"license":"BSD","_id":"aaa@0.0.1","dist": {"shasum":"a04fa88ad887a70dd5429652ce23823619dfd7c3","tarball":"https://registry.npmjs.org/aaa/-/aaa-0.0.1.tgz"},"_npmVersion":"1.1.62","_npmUser":{"name":"erhu65","email":"erhu65@gmail.com"},"maintainers":[{"name":"erhu65","email":"erhu65@gmail.com"}],"directories":{}},"0.0.2":{"name":"aaa","version":"0.0.2","description":"aaa...","main":"index.js","scripts":{"test":"test.js"},"repository":{"type":"git","url":"http:/www.google.git"},"keywords":["math"],"author":{"name":"peter"},"license":"BSD","_id":"aaa@0.0.2","dist": {"shasum":"acd2f632b94b0f89765e75bb7b7549ce5b01caa2","tarball":"https://registry.npmjs.org/aaa/-/aaa-0.0.2.tgz"},"_npmVersion":"1.1.62","_npmUser":{"name":"erhu65","email":"erhu65@gmail.com"},"maintainers":[{"name":"erhu65","email":"erhu65@gmail.com"}],"directories":{}}},"readme":"ERROR: No README.md file found!","maintainers":[{"name":"erhu65","email":"erhu65@gmail.com"}],"timmacbook-j:verdaccio.mmacbookmacbook-j:verdaccio.master.git jpicmacbook-j:verdaccio.master.git jpicmacbookmacbookmacbookmacbookmacbook ````
|
||||
## Usando Verdaccio
|
||||
|
||||
Usar verdaccio con cualquier cliente de manejador de paquetes es muy sencillo.
|
||||
|
||||

|
||||
|
||||
Puedes usar un registro personalizado bien definiendolo globalmente para todos los projectos
|
||||
|
||||
npm set registry http://localhost:4873
|
||||
|
||||
|
||||
o por línea de commandos como argumento `--registry` en npm (ligeramente diferente en yarn)
|
||||
|
||||
npm install lodash --registry http://localhost:4873
|
||||
|
||||
|
||||
## Privado
|
||||
|
||||
Todos los paquetes que publicas son privados y accesibles basados en tu configuración.
|
||||
|
||||
## Proxy
|
||||
|
||||
Verdaccio almacena todas las dependencias bajo demanda y acelera las instalaciones en redes locales y privadas.
|
||||
|
||||
## Verdaccio en pocas palabras
|
||||
|
||||
* Es una aplicación web basada en Node.js
|
||||
* Es un registro privado
|
||||
* Es un proxy para la red local
|
||||
* Es una aplicación extensible
|
||||
* Es muy fácil de usar e instalar
|
||||
* Ofrecemos soporte en Docker y Kubernetes
|
||||
* Es 100% compatible con yarn, npm y pnpm
|
||||
* Es un ** forked** basado en `sinopia@1.4.0` y 100% **compatible hacia atras**.
|
||||
* Verdaccio significa **Un color verde popular en la Italia medieval para la pintura en fresco**.
|
|
@ -2,12 +2,18 @@
|
|||
id: docker
|
||||
title: Docker
|
||||
---
|
||||
<div class="docker-count">
|
||||

|
||||
</div>
|
||||
|
||||
To pull the latest pre-built [docker image](https://hub.docker.com/r/verdaccio/verdaccio/):
|
||||
|
||||
```bash
|
||||
docker pull verdaccio/verdaccio
|
||||
```
|
||||
|
||||

|
||||
|
||||
## Tagged Versions
|
||||
|
||||
Since version `v2.x` you can pull docker images by [tag](https://hub.docker.com/r/verdaccio/verdaccio/tags/), as follows:
|
||||
|
@ -59,7 +65,7 @@ V_PATH=/path/for/verdaccio; docker run -it --rm --name verdaccio -p 4873:4873 \
|
|||
verdaccio/verdaccio
|
||||
```
|
||||
|
||||
> Note: Verdaccio runs as a non-root user (uid=101, gid=101) inside the container, if you use bind mount to override default, you need to make sure the mount directory is assigned to the right user. In above example, you need to run `sudo chown -R 101:101 /opt/verdaccio` otherwise you will get permission errors at runtime. [Use docker volume](https://docs.docker.com/storage/volumes/) is recommended over using bind mount.
|
||||
> Note: Verdaccio runs as a non-root user (uid=100, gid=101) inside the container, if you use bind mount to override default, you need to make sure the mount directory is assigned to the right user. In above example, you need to run `sudo chown -R 100:101 /opt/verdaccio` otherwise you will get permission errors at runtime. [Use docker volume](https://docs.docker.com/storage/volumes/) is recommended over using bind mount.
|
||||
|
||||
### Docker and custom port configuration
|
||||
|
||||
|
|
|
@ -28,6 +28,8 @@ or using `yarn`
|
|||
yarn global add verdaccio
|
||||
```
|
||||
|
||||

|
||||
|
||||
### Beta
|
||||
|
||||
⚠️⚠️ **Help us to test the version 3.x in order to release a stable version soon. Remember, to do never test with your original storage folder, do always a backup** ⚠️⚠️
|
||||
|
|
|
@ -25,23 +25,24 @@ uplinks:
|
|||
|
||||
You can define mutiple uplinks and each of them must have an unique name (key). They can have two properties:
|
||||
|
||||
| Property | Type | Required | Example | Support | Description | Default |
|
||||
| ------------ | ------- | -------- | ----------------------------------------------------------------------------------- | ------- | ------------------------------------------------------------------------------------------------------------------ | ---------- |
|
||||
| url | string | Yes | https://registry.npmjs.org/ | all | The registry url | npmjs |
|
||||
| ca | string | No | ~./ssl/client.crt' | all | SSL path certificate | No default |
|
||||
| timeout | string | No | 100ms | all | set new timeout for the request | 30s |
|
||||
| maxage | string | No | 10m | all | limit maximun failure request | 2m |
|
||||
| fail_timeout | string | No | 10m | all | defines max time when a request becomes a failure | 5m |
|
||||
| max_fails | number | No | 2 | all | limit maximun failure request | 2 |
|
||||
| cache | boolean | No | [true,false] | >= 2.1 | avoid cache tarballs | true |
|
||||
| auth | list | No | type: [bearer,basic], [token: "token",token_env: [true,\<get name process.env\>]] | >= 2.5 | assigns the header 'Authorization' see: http://blog.npmjs.org/post/118393368555/deploying-with-npm-private-modules | disabled |
|
||||
| headers | list | No | authorization: "Basic YourBase64EncodedCredentials==" | all | list of custom headers for the uplink | disabled |
|
||||
| strict_ssl | boolean | No | [true,false] | >= 3.0 | If true, requires SSL certificates be valid. | true |
|
||||
| Property | Type | Required | Example | Support | Description | Default |
|
||||
| ------------ | ------- | -------- | ----------------------------------------------------------------------------- | ------- | ------------------------------------------------------------------------------------------------------------------ | ---------- |
|
||||
| url | string | Yes | https://registry.npmjs.org/ | all | The registry url | npmjs |
|
||||
| ca | string | No | ~./ssl/client.crt' | all | SSL path certificate | No default |
|
||||
| timeout | string | No | 100ms | all | set new timeout for the request | 30s |
|
||||
| maxage | string | No | 10m | all | limit maximun failure request | 2m |
|
||||
| fail_timeout | string | No | 10m | all | defines max time when a request becomes a failure | 5m |
|
||||
| max_fails | number | No | 2 | all | limit maximun failure request | 2 |
|
||||
| cache | boolean | No | [true,false] | >= 2.1 | avoid cache tarballs | true |
|
||||
| auth | list | No | type: [bearer], [token: "token",token_env: [true,\<get name process.env\>]] | >= 2.5 | assigns the header 'Authorization' see: http://blog.npmjs.org/post/118393368555/deploying-with-npm-private-modules | disabled |
|
||||
| headers | list | No | authorization: "Bearer SecretJWToken==" | all | list of custom headers for the uplink | disabled |
|
||||
| strict_ssl | boolean | No | [true,false] | >= 3.0 | If true, requires SSL certificates be valid. | true |
|
||||
|
||||
> The `auth` property allows you to use a auth token via an environment variable, [clik here for an example](https://github.com/verdaccio/verdaccio/releases/tag/v2.5.0).
|
||||
|
||||
### You Must know
|
||||
|
||||
* Verdaccio does not use Basic Authentication since version `v2.3.0`. All tokens generated by verdaccio are based on JWT ([JSON Web Token](https://jwt.io/))
|
||||
* Uplinks must be registries compatible with the `npm` endpoints. Eg: *verdaccio*, `sinopia@1.4.0`, *npmjs registry*, *yarn registry*, *JFrog*, *Nexus* and more.
|
||||
* Setting `cache` to false will help to save space in your hard drive. This will avoid store `tarballs` but [it will keep metadata in folders](https://github.com/verdaccio/verdaccio/issues/391).
|
||||
* Exceed with multiple uplinks might slow down the lookup of your packages due for each request a npm client does, verdaccio does 1 call for each uplink.
|
||||
|
|
|
@ -2,7 +2,44 @@
|
|||
id: what-is-verdaccio
|
||||
title: "What is Verdaccio?"
|
||||
---
|
||||
## In a nutshell
|
||||
Verdaccio is a **lightweight private npm proxy registry** built in **Node.js**
|
||||
|
||||
## What's a registry
|
||||
|
||||
* A repository for packages that implements the **CommonJS Compliant Package Registry specification** for reading package info
|
||||
* Provide an API compatible with npm clients **(yarn/npm/pnpm)**
|
||||
* Follow the semantic Versioning compatible **(semver)**
|
||||
|
||||
$> verdaccio
|
||||
|
||||
|
||||

|
||||
|
||||
## Using Verdaccio
|
||||
|
||||
Using verdaccio with any node package manager client is quite straightforward.
|
||||
|
||||

|
||||
|
||||
You can use a custom registry either setting globally for all your projects
|
||||
|
||||
npm set registry http://localhost:4873
|
||||
|
||||
|
||||
or by command line as argument `--registry` in npm (slightly different in yarn)
|
||||
|
||||
npm install lodash --registry http://localhost:4873
|
||||
|
||||
|
||||
## Private
|
||||
|
||||
All packages that you publish are private and only accessible based in your configuration.
|
||||
|
||||
## Proxy
|
||||
|
||||
Verdaccio cache all dependencies by demand and speed up installations in local or private networks.
|
||||
|
||||
## Verdaccio in a nutshell
|
||||
|
||||
* It's a web app based on Node.js
|
||||
* It's a private npm registry
|
||||
|
@ -11,18 +48,5 @@ title: "What is Verdaccio?"
|
|||
* It's a fairly easy install and use
|
||||
* We offer Docker and Kubernetes support
|
||||
* It is 100% compatible with yarn, npm and pnpm
|
||||
* It was born based on `sinopia@1.4.0` fork and *backward compatible*
|
||||
* Verdaccio means **A green color popular in late medieval Italy for fresco painting**.
|
||||
|
||||
## What's a registry
|
||||
|
||||
* A repository for packages that implements the CommonJS Compliant Package Registry specification for reading package info
|
||||
* Store npm packages
|
||||
* Provide an API compatible with npm clients
|
||||
* Semantic Versioning (semver) compatible
|
||||
|
||||
```bash curl -v https://registry.npmjs.org/aaa
|
||||
|
||||
* Connected to registry.npmjs.org (151.101.12.162) port 443 (#0)
|
||||
|
||||
* Connection #0 to host registry.npmjs.org left intact {"_id":"aaa","_rev":"6-ad86dfc8720569871753b5bf561f2741","name":"aaa","description":"aaa...","dist-tags":{"latest":"0.0.2"},"versions":{"0.0.1":{"name":"aaa","version":"0.0.1","description":"aaa...","main":"index.js","scripts":{"test":"test.js"},"repository":{"type":"git","url":"http:/www.google.git"},"keywords":["math"],"author":{"name":"peter"},"license":"BSD","_id":"aaa@0.0.1","dist": {"shasum":"a04fa88ad887a70dd5429652ce23823619dfd7c3","tarball":"https://registry.npmjs.org/aaa/-/aaa-0.0.1.tgz"},"_npmVersion":"1.1.62","_npmUser":{"name":"erhu65","email":"erhu65@gmail.com"},"maintainers":[{"name":"erhu65","email":"erhu65@gmail.com"}],"directories":{}},"0.0.2":{"name":"aaa","version":"0.0.2","description":"aaa...","main":"index.js","scripts":{"test":"test.js"},"repository":{"type":"git","url":"http:/www.google.git"},"keywords":["math"],"author":{"name":"peter"},"license":"BSD","_id":"aaa@0.0.2","dist": {"shasum":"acd2f632b94b0f89765e75bb7b7549ce5b01caa2","tarball":"https://registry.npmjs.org/aaa/-/aaa-0.0.2.tgz"},"_npmVersion":"1.1.62","_npmUser":{"name":"erhu65","email":"erhu65@gmail.com"},"maintainers":[{"name":"erhu65","email":"erhu65@gmail.com"}],"directories":{}}},"readme":"ERROR: No README.md file found!","maintainers":[{"name":"erhu65","email":"erhu65@gmail.com"}],"timmacbook-j:verdaccio.mmacbookmacbook-j:verdaccio.master.git jpicmacbook-j:verdaccio.master.git jpicmacbookmacbookmacbookmacbookmacbook ````
|
||||
* It was **forked** based on `sinopia@1.4.0` and 100% **backward compatible**.
|
||||
* Verdaccio means **A green color popular in late medieval Italy for fresco painting**.
|
|
@ -2,12 +2,18 @@
|
|||
id: docker
|
||||
title: Docker
|
||||
---
|
||||
<div class="docker-count">
|
||||

|
||||
</div>
|
||||
|
||||
To pull the latest pre-built [docker image](https://hub.docker.com/r/verdaccio/verdaccio/):
|
||||
|
||||
```bash
|
||||
docker pull verdaccio/verdaccio
|
||||
```
|
||||
|
||||

|
||||
|
||||
## Tagged Versions
|
||||
|
||||
Since version `v2.x` you can pull docker images by [tag](https://hub.docker.com/r/verdaccio/verdaccio/tags/), as follows:
|
||||
|
@ -59,7 +65,7 @@ V_PATH=/path/for/verdaccio; docker run -it --rm --name verdaccio -p 4873:4873 \
|
|||
verdaccio/verdaccio
|
||||
```
|
||||
|
||||
> Note: Verdaccio runs as a non-root user (uid=101, gid=101) inside the container, if you use bind mount to override default, you need to make sure the mount directory is assigned to the right user. In above example, you need to run `sudo chown -R 101:101 /opt/verdaccio` otherwise you will get permission errors at runtime. [Use docker volume](https://docs.docker.com/storage/volumes/) is recommended over using bind mount.
|
||||
> Note: Verdaccio runs as a non-root user (uid=100, gid=101) inside the container, if you use bind mount to override default, you need to make sure the mount directory is assigned to the right user. In above example, you need to run `sudo chown -R 100:101 /opt/verdaccio` otherwise you will get permission errors at runtime. [Use docker volume](https://docs.docker.com/storage/volumes/) is recommended over using bind mount.
|
||||
|
||||
### Docker and custom port configuration
|
||||
|
||||
|
|
|
@ -28,6 +28,8 @@ or using `yarn`
|
|||
yarn global add verdaccio
|
||||
```
|
||||
|
||||

|
||||
|
||||
### Beta
|
||||
|
||||
⚠️⚠️ **Help us to test the version 3.x in order to release a stable version soon. Remember, to do never test with your original storage folder, do always a backup** ⚠️⚠️
|
||||
|
|
|
@ -25,23 +25,24 @@ uplinks:
|
|||
|
||||
You can define mutiple uplinks and each of them must have an unique name (key). They can have two properties:
|
||||
|
||||
| Property | Type | Required | Example | Support | Description | Default |
|
||||
| ------------ | ------- | -------- | ----------------------------------------------------------------------------------- | ------- | ------------------------------------------------------------------------------------------------------------------ | ---------- |
|
||||
| url | string | Yes | https://registry.npmjs.org/ | all | The registry url | npmjs |
|
||||
| ca | string | No | ~./ssl/client.crt' | all | SSL path certificate | No default |
|
||||
| timeout | string | No | 100ms | all | set new timeout for the request | 30s |
|
||||
| maxage | string | No | 10m | all | limit maximun failure request | 2m |
|
||||
| fail_timeout | string | No | 10m | all | defines max time when a request becomes a failure | 5m |
|
||||
| max_fails | number | No | 2 | all | limit maximun failure request | 2 |
|
||||
| cache | boolean | No | [true,false] | >= 2.1 | avoid cache tarballs | true |
|
||||
| auth | list | No | type: [bearer,basic], [token: "token",token_env: [true,\<get name process.env\>]] | >= 2.5 | assigns the header 'Authorization' see: http://blog.npmjs.org/post/118393368555/deploying-with-npm-private-modules | disabled |
|
||||
| headers | list | No | authorization: "Basic YourBase64EncodedCredentials==" | all | list of custom headers for the uplink | disabled |
|
||||
| strict_ssl | boolean | No | [true,false] | >= 3.0 | If true, requires SSL certificates be valid. | true |
|
||||
| Property | Type | Required | Example | Support | Description | Default |
|
||||
| ------------ | ------- | -------- | ----------------------------------------------------------------------------- | ------- | ------------------------------------------------------------------------------------------------------------------ | ---------- |
|
||||
| url | string | Yes | https://registry.npmjs.org/ | all | The registry url | npmjs |
|
||||
| ca | string | No | ~./ssl/client.crt' | all | SSL path certificate | No default |
|
||||
| timeout | string | No | 100ms | all | set new timeout for the request | 30s |
|
||||
| maxage | string | No | 10m | all | limit maximun failure request | 2m |
|
||||
| fail_timeout | string | No | 10m | all | defines max time when a request becomes a failure | 5m |
|
||||
| max_fails | number | No | 2 | all | limit maximun failure request | 2 |
|
||||
| cache | boolean | No | [true,false] | >= 2.1 | avoid cache tarballs | true |
|
||||
| auth | list | No | type: [bearer], [token: "token",token_env: [true,\<get name process.env\>]] | >= 2.5 | assigns the header 'Authorization' see: http://blog.npmjs.org/post/118393368555/deploying-with-npm-private-modules | disabled |
|
||||
| headers | list | No | authorization: "Bearer SecretJWToken==" | all | list of custom headers for the uplink | disabled |
|
||||
| strict_ssl | boolean | No | [true,false] | >= 3.0 | If true, requires SSL certificates be valid. | true |
|
||||
|
||||
> The `auth` property allows you to use a auth token via an environment variable, [clik here for an example](https://github.com/verdaccio/verdaccio/releases/tag/v2.5.0).
|
||||
|
||||
### You Must know
|
||||
|
||||
* Verdaccio does not use Basic Authentication since version `v2.3.0`. All tokens generated by verdaccio are based on JWT ([JSON Web Token](https://jwt.io/))
|
||||
* Uplinks must be registries compatible with the `npm` endpoints. Eg: *verdaccio*, `sinopia@1.4.0`, *npmjs registry*, *yarn registry*, *JFrog*, *Nexus* and more.
|
||||
* Setting `cache` to false will help to save space in your hard drive. This will avoid store `tarballs` but [it will keep metadata in folders](https://github.com/verdaccio/verdaccio/issues/391).
|
||||
* Exceed with multiple uplinks might slow down the lookup of your packages due for each request a npm client does, verdaccio does 1 call for each uplink.
|
||||
|
|
|
@ -2,7 +2,44 @@
|
|||
id: what-is-verdaccio
|
||||
title: "What is Verdaccio?"
|
||||
---
|
||||
## In a nutshell
|
||||
Verdaccio is a **lightweight private npm proxy registry** built in **Node.js**
|
||||
|
||||
## What's a registry
|
||||
|
||||
* A repository for packages that implements the **CommonJS Compliant Package Registry specification** for reading package info
|
||||
* Provide an API compatible with npm clients **(yarn/npm/pnpm)**
|
||||
* Follow the semantic Versioning compatible **(semver)**
|
||||
|
||||
$> verdaccio
|
||||
|
||||
|
||||

|
||||
|
||||
## Using Verdaccio
|
||||
|
||||
Using verdaccio with any node package manager client is quite straightforward.
|
||||
|
||||

|
||||
|
||||
You can use a custom registry either setting globally for all your projects
|
||||
|
||||
npm set registry http://localhost:4873
|
||||
|
||||
|
||||
or by command line as argument `--registry` in npm (slightly different in yarn)
|
||||
|
||||
npm install lodash --registry http://localhost:4873
|
||||
|
||||
|
||||
## Private
|
||||
|
||||
All packages that you publish are private and only accessible based in your configuration.
|
||||
|
||||
## Proxy
|
||||
|
||||
Verdaccio cache all dependencies by demand and speed up installations in local or private networks.
|
||||
|
||||
## Verdaccio in a nutshell
|
||||
|
||||
* It's a web app based on Node.js
|
||||
* It's a private npm registry
|
||||
|
@ -11,18 +48,5 @@ title: "What is Verdaccio?"
|
|||
* It's a fairly easy install and use
|
||||
* We offer Docker and Kubernetes support
|
||||
* It is 100% compatible with yarn, npm and pnpm
|
||||
* It was born based on `sinopia@1.4.0` fork and *backward compatible*
|
||||
* Verdaccio means **A green color popular in late medieval Italy for fresco painting**.
|
||||
|
||||
## What's a registry
|
||||
|
||||
* A repository for packages that implements the CommonJS Compliant Package Registry specification for reading package info
|
||||
* Store npm packages
|
||||
* Provide an API compatible with npm clients
|
||||
* Semantic Versioning (semver) compatible
|
||||
|
||||
```bash curl -v https://registry.npmjs.org/aaa
|
||||
|
||||
* Connected to registry.npmjs.org (151.101.12.162) port 443 (#0)
|
||||
|
||||
* Connection #0 to host registry.npmjs.org left intact {"_id":"aaa","_rev":"6-ad86dfc8720569871753b5bf561f2741","name":"aaa","description":"aaa...","dist-tags":{"latest":"0.0.2"},"versions":{"0.0.1":{"name":"aaa","version":"0.0.1","description":"aaa...","main":"index.js","scripts":{"test":"test.js"},"repository":{"type":"git","url":"http:/www.google.git"},"keywords":["math"],"author":{"name":"peter"},"license":"BSD","_id":"aaa@0.0.1","dist": {"shasum":"a04fa88ad887a70dd5429652ce23823619dfd7c3","tarball":"https://registry.npmjs.org/aaa/-/aaa-0.0.1.tgz"},"_npmVersion":"1.1.62","_npmUser":{"name":"erhu65","email":"erhu65@gmail.com"},"maintainers":[{"name":"erhu65","email":"erhu65@gmail.com"}],"directories":{}},"0.0.2":{"name":"aaa","version":"0.0.2","description":"aaa...","main":"index.js","scripts":{"test":"test.js"},"repository":{"type":"git","url":"http:/www.google.git"},"keywords":["math"],"author":{"name":"peter"},"license":"BSD","_id":"aaa@0.0.2","dist": {"shasum":"acd2f632b94b0f89765e75bb7b7549ce5b01caa2","tarball":"https://registry.npmjs.org/aaa/-/aaa-0.0.2.tgz"},"_npmVersion":"1.1.62","_npmUser":{"name":"erhu65","email":"erhu65@gmail.com"},"maintainers":[{"name":"erhu65","email":"erhu65@gmail.com"}],"directories":{}}},"readme":"ERROR: No README.md file found!","maintainers":[{"name":"erhu65","email":"erhu65@gmail.com"}],"timmacbook-j:verdaccio.mmacbookmacbook-j:verdaccio.master.git jpicmacbook-j:verdaccio.master.git jpicmacbookmacbookmacbookmacbookmacbook ````
|
||||
* It was **forked** based on `sinopia@1.4.0` and 100% **backward compatible**.
|
||||
* Verdaccio means **A green color popular in late medieval Italy for fresco painting**.
|
|
@ -2,12 +2,18 @@
|
|||
id: docker
|
||||
title: Docker
|
||||
---
|
||||
<div class="docker-count">
|
||||

|
||||
</div>
|
||||
|
||||
To pull the latest pre-built [docker image](https://hub.docker.com/r/verdaccio/verdaccio/):
|
||||
|
||||
```bash
|
||||
docker pull verdaccio/verdaccio
|
||||
```
|
||||
|
||||

|
||||
|
||||
## Tagged Versions
|
||||
|
||||
Since version `v2.x` you can pull docker images by [tag](https://hub.docker.com/r/verdaccio/verdaccio/tags/), as follows:
|
||||
|
@ -59,7 +65,7 @@ V_PATH=/path/for/verdaccio; docker run -it --rm --name verdaccio -p 4873:4873 \
|
|||
verdaccio/verdaccio
|
||||
```
|
||||
|
||||
> Note: Verdaccio runs as a non-root user (uid=101, gid=101) inside the container, if you use bind mount to override default, you need to make sure the mount directory is assigned to the right user. In above example, you need to run `sudo chown -R 101:101 /opt/verdaccio` otherwise you will get permission errors at runtime. [Use docker volume](https://docs.docker.com/storage/volumes/) is recommended over using bind mount.
|
||||
> Note: Verdaccio runs as a non-root user (uid=100, gid=101) inside the container, if you use bind mount to override default, you need to make sure the mount directory is assigned to the right user. In above example, you need to run `sudo chown -R 100:101 /opt/verdaccio` otherwise you will get permission errors at runtime. [Use docker volume](https://docs.docker.com/storage/volumes/) is recommended over using bind mount.
|
||||
|
||||
### Docker and custom port configuration
|
||||
|
||||
|
|
|
@ -28,6 +28,8 @@ ou usando `yarn`
|
|||
yarn global add verdaccio
|
||||
```
|
||||
|
||||

|
||||
|
||||
### Beta
|
||||
|
||||
⚠️⚠️ **Help us to test the version 3.x in order to release a stable version soon. Remember, to do never test with your original storage folder, do always a backup** ⚠️⚠️
|
||||
|
|
|
@ -25,23 +25,24 @@ uplinks:
|
|||
|
||||
You can define mutiple uplinks and each of them must have an unique name (key). They can have two properties:
|
||||
|
||||
| Property | Type | Required | Example | Support | Description | Default |
|
||||
| ------------ | ------- | -------- | ----------------------------------------------------------------------------------- | ------- | ------------------------------------------------------------------------------------------------------------------ | ---------- |
|
||||
| url | string | Yes | https://registry.npmjs.org/ | all | The registry url | npmjs |
|
||||
| ca | string | No | ~./ssl/client.crt' | all | SSL path certificate | No default |
|
||||
| timeout | string | No | 100ms | all | set new timeout for the request | 30s |
|
||||
| maxage | string | No | 10m | all | limit maximun failure request | 2m |
|
||||
| fail_timeout | string | No | 10m | all | defines max time when a request becomes a failure | 5m |
|
||||
| max_fails | number | No | 2 | all | limit maximun failure request | 2 |
|
||||
| cache | boolean | No | [true,false] | >= 2.1 | avoid cache tarballs | true |
|
||||
| auth | list | No | type: [bearer,basic], [token: "token",token_env: [true,\<get name process.env\>]] | >= 2.5 | assigns the header 'Authorization' see: http://blog.npmjs.org/post/118393368555/deploying-with-npm-private-modules | disabled |
|
||||
| headers | list | No | authorization: "Basic YourBase64EncodedCredentials==" | all | list of custom headers for the uplink | disabled |
|
||||
| strict_ssl | boolean | No | [true,false] | >= 3.0 | If true, requires SSL certificates be valid. | true |
|
||||
| Property | Type | Required | Example | Support | Description | Default |
|
||||
| ------------ | ------- | -------- | ----------------------------------------------------------------------------- | ------- | ------------------------------------------------------------------------------------------------------------------ | ---------- |
|
||||
| url | string | Yes | https://registry.npmjs.org/ | all | The registry url | npmjs |
|
||||
| ca | string | No | ~./ssl/client.crt' | all | SSL path certificate | No default |
|
||||
| timeout | string | No | 100ms | all | set new timeout for the request | 30s |
|
||||
| maxage | string | No | 10m | all | limit maximun failure request | 2m |
|
||||
| fail_timeout | string | No | 10m | all | defines max time when a request becomes a failure | 5m |
|
||||
| max_fails | number | No | 2 | all | limit maximun failure request | 2 |
|
||||
| cache | boolean | No | [true,false] | >= 2.1 | avoid cache tarballs | true |
|
||||
| auth | list | No | type: [bearer], [token: "token",token_env: [true,\<get name process.env\>]] | >= 2.5 | assigns the header 'Authorization' see: http://blog.npmjs.org/post/118393368555/deploying-with-npm-private-modules | disabled |
|
||||
| headers | list | No | authorization: "Bearer SecretJWToken==" | all | list of custom headers for the uplink | disabled |
|
||||
| strict_ssl | boolean | No | [true,false] | >= 3.0 | If true, requires SSL certificates be valid. | true |
|
||||
|
||||
> The `auth` property allows you to use a auth token via an environment variable, [clik here for an example](https://github.com/verdaccio/verdaccio/releases/tag/v2.5.0).
|
||||
|
||||
### You Must know
|
||||
|
||||
* Verdaccio does not use Basic Authentication since version `v2.3.0`. All tokens generated by verdaccio are based on JWT ([JSON Web Token](https://jwt.io/))
|
||||
* Uplinks must be registries compatible with the `npm` endpoints. Eg: *verdaccio*, `sinopia@1.4.0`, *npmjs registry*, *yarn registry*, *JFrog*, *Nexus* and more.
|
||||
* Setting `cache` to false will help to save space in your hard drive. This will avoid store `tarballs` but [it will keep metadata in folders](https://github.com/verdaccio/verdaccio/issues/391).
|
||||
* Exceed with multiple uplinks might slow down the lookup of your packages due for each request a npm client does, verdaccio does 1 call for each uplink.
|
||||
|
|
|
@ -2,27 +2,51 @@
|
|||
id: what-is-verdaccio
|
||||
title: "O que é o Verdaccio?"
|
||||
---
|
||||
## Em poucas palavras
|
||||
Verdaccio is a **lightweight private npm proxy registry** built in **Node.js**
|
||||
|
||||
* É um sistema para web feito em Node.js
|
||||
* Registro privado para npm
|
||||
* É um proxy para a rede local
|
||||
* Pode ser estendido através de plugins
|
||||
* É fácil de instalar e utilizar
|
||||
* É possível utilizar junto com o Docker ou Kubernetes
|
||||
* É 100% compatível com yarn, npm e pnpm
|
||||
* É um fork compatível e baseado no `sinopia@1.4.0` que foi *descontinuado*
|
||||
* Verdaccio significa **Uma cor verde muito popular na era Medieval Italiana usada em pinturas feitas ao estilo Afresco**.
|
||||
## What's a registry
|
||||
|
||||
## O que é um Registro
|
||||
* A repository for packages that implements the **CommonJS Compliant Package Registry specification** for reading package info
|
||||
* Provide an API compatible with npm clients **(yarn/npm/pnpm)**
|
||||
* Follow the semantic Versioning compatible **(semver)**
|
||||
|
||||
* É um repositório de pacotes compatíveis com a especificação CommonJS e possui metadados sobre seus pacotes
|
||||
* Distribui pacotes npm
|
||||
* Oferece uma API compatível para clientes npm
|
||||
* Compativel com Versionamento Semântico (semver)
|
||||
$> verdaccio
|
||||
|
||||
|
||||
```bash curl -v https://registry.npmjs.org/aaa
|
||||

|
||||
|
||||
* Connected to registry.npmjs.org (151.101.12.162) port 443 (#0)
|
||||
## Using Verdaccio
|
||||
|
||||
* Connection #0 to host registry.npmjs.org left intact {"_id":"aaa","_rev":"6-ad86dfc8720569871753b5bf561f2741","name":"aaa","description":"aaa...","dist-tags":{"latest":"0.0.2"},"versions":{"0.0.1":{"name":"aaa","version":"0.0.1","description":"aaa...","main":"index.js","scripts":{"test":"test.js"},"repository":{"type":"git","url":"http:/www.google.git"},"keywords":["math"],"author":{"name":"peter"},"license":"BSD","_id":"aaa@0.0.1","dist": {"shasum":"a04fa88ad887a70dd5429652ce23823619dfd7c3","tarball":"https://registry.npmjs.org/aaa/-/aaa-0.0.1.tgz"},"_npmVersion":"1.1.62","_npmUser":{"name":"erhu65","email":"erhu65@gmail.com"},"maintainers":[{"name":"erhu65","email":"erhu65@gmail.com"}],"directories":{}},"0.0.2":{"name":"aaa","version":"0.0.2","description":"aaa...","main":"index.js","scripts":{"test":"test.js"},"repository":{"type":"git","url":"http:/www.google.git"},"keywords":["math"],"author":{"name":"peter"},"license":"BSD","_id":"aaa@0.0.2","dist": {"shasum":"acd2f632b94b0f89765e75bb7b7549ce5b01caa2","tarball":"https://registry.npmjs.org/aaa/-/aaa-0.0.2.tgz"},"_npmVersion":"1.1.62","_npmUser":{"name":"erhu65","email":"erhu65@gmail.com"},"maintainers":[{"name":"erhu65","email":"erhu65@gmail.com"}],"directories":{}}},"readme":"ERROR: No README.md file found!","maintainers":[{"name":"erhu65","email":"erhu65@gmail.com"}],"timmacbook-j:verdaccio.mmacbookmacbook-j:verdaccio.master.git jpicmacbook-j:verdaccio.master.git jpicmacbookmacbookmacbookmacbookmacbook ```` Context | Request Context Paragraph text XPath: /ul[3]/li[2]/p
|
||||
Using verdaccio with any node package manager client is quite straightforward.
|
||||
|
||||

|
||||
|
||||
You can use a custom registry either setting globally for all your projects
|
||||
|
||||
npm set registry http://localhost:4873
|
||||
|
||||
|
||||
or by command line as argument `--registry` in npm (slightly different in yarn)
|
||||
|
||||
npm install lodash --registry http://localhost:4873
|
||||
|
||||
|
||||
## Private
|
||||
|
||||
All packages that you publish are private and only accessible based in your configuration.
|
||||
|
||||
## Proxy
|
||||
|
||||
Verdaccio cache all dependencies by demand and speed up installations in local or private networks.
|
||||
|
||||
## Verdaccio in a nutshell
|
||||
|
||||
* It's a web app based on Node.js
|
||||
* It's a private npm registry
|
||||
* It's a local network proxy
|
||||
* It's a Pluggable application
|
||||
* It's a fairly easy install and use
|
||||
* We offer Docker and Kubernetes support
|
||||
* It is 100% compatible with yarn, npm and pnpm
|
||||
* It was **forked** based on `sinopia@1.4.0` and 100% **backward compatible**.
|
||||
* Verdaccio means **A green color popular in late medieval Italy for fresco painting**.
|
|
@ -2,12 +2,18 @@
|
|||
id: docker
|
||||
title: Docker
|
||||
---
|
||||
<div class="docker-count">
|
||||

|
||||
</div>
|
||||
|
||||
To pull the latest pre-built [docker image](https://hub.docker.com/r/verdaccio/verdaccio/):
|
||||
|
||||
```bash
|
||||
docker pull verdaccio/verdaccio
|
||||
```
|
||||
|
||||

|
||||
|
||||
## Tagged Versions
|
||||
|
||||
Since version `v2.x` you can pull docker images by [tag](https://hub.docker.com/r/verdaccio/verdaccio/tags/), as follows:
|
||||
|
@ -59,7 +65,7 @@ V_PATH=/path/for/verdaccio; docker run -it --rm --name verdaccio -p 4873:4873 \
|
|||
verdaccio/verdaccio
|
||||
```
|
||||
|
||||
> Note: Verdaccio runs as a non-root user (uid=101, gid=101) inside the container, if you use bind mount to override default, you need to make sure the mount directory is assigned to the right user. In above example, you need to run `sudo chown -R 101:101 /opt/verdaccio` otherwise you will get permission errors at runtime. [Use docker volume](https://docs.docker.com/storage/volumes/) is recommended over using bind mount.
|
||||
> Note: Verdaccio runs as a non-root user (uid=100, gid=101) inside the container, if you use bind mount to override default, you need to make sure the mount directory is assigned to the right user. In above example, you need to run `sudo chown -R 100:101 /opt/verdaccio` otherwise you will get permission errors at runtime. [Use docker volume](https://docs.docker.com/storage/volumes/) is recommended over using bind mount.
|
||||
|
||||
### Docker and custom port configuration
|
||||
|
||||
|
|
|
@ -28,6 +28,8 @@ or using `yarn`
|
|||
yarn global add verdaccio
|
||||
```
|
||||
|
||||

|
||||
|
||||
### Beta
|
||||
|
||||
⚠️⚠️ **Help us to test the version 3.x in order to release a stable version soon. Remember, to do never test with your original storage folder, do always a backup** ⚠️⚠️
|
||||
|
|
|
@ -25,23 +25,24 @@ uplinks:
|
|||
|
||||
You can define mutiple uplinks and each of them must have an unique name (key). They can have two properties:
|
||||
|
||||
| Property | Type | Required | Example | Support | Description | Default |
|
||||
| ------------ | ------- | -------- | ----------------------------------------------------------------------------------- | ------- | ------------------------------------------------------------------------------------------------------------------ | ---------- |
|
||||
| url | string | Yes | https://registry.npmjs.org/ | all | The registry url | npmjs |
|
||||
| ca | string | No | ~./ssl/client.crt' | all | SSL path certificate | No default |
|
||||
| timeout | string | No | 100ms | all | set new timeout for the request | 30s |
|
||||
| maxage | string | No | 10m | all | limit maximun failure request | 2m |
|
||||
| fail_timeout | string | No | 10m | all | defines max time when a request becomes a failure | 5m |
|
||||
| max_fails | number | No | 2 | all | limit maximun failure request | 2 |
|
||||
| cache | boolean | No | [true,false] | >= 2.1 | avoid cache tarballs | true |
|
||||
| auth | list | No | type: [bearer,basic], [token: "token",token_env: [true,\<get name process.env\>]] | >= 2.5 | assigns the header 'Authorization' see: http://blog.npmjs.org/post/118393368555/deploying-with-npm-private-modules | disabled |
|
||||
| headers | list | No | authorization: "Basic YourBase64EncodedCredentials==" | all | list of custom headers for the uplink | disabled |
|
||||
| strict_ssl | boolean | No | [true,false] | >= 3.0 | If true, requires SSL certificates be valid. | true |
|
||||
| Property | Type | Required | Example | Support | Description | Default |
|
||||
| ------------ | ------- | -------- | ----------------------------------------------------------------------------- | ------- | ------------------------------------------------------------------------------------------------------------------ | ---------- |
|
||||
| url | string | Yes | https://registry.npmjs.org/ | all | The registry url | npmjs |
|
||||
| ca | string | No | ~./ssl/client.crt' | all | SSL path certificate | No default |
|
||||
| timeout | string | No | 100ms | all | set new timeout for the request | 30s |
|
||||
| maxage | string | No | 10m | all | limit maximun failure request | 2m |
|
||||
| fail_timeout | string | No | 10m | all | defines max time when a request becomes a failure | 5m |
|
||||
| max_fails | number | No | 2 | all | limit maximun failure request | 2 |
|
||||
| cache | boolean | No | [true,false] | >= 2.1 | avoid cache tarballs | true |
|
||||
| auth | list | No | type: [bearer], [token: "token",token_env: [true,\<get name process.env\>]] | >= 2.5 | assigns the header 'Authorization' see: http://blog.npmjs.org/post/118393368555/deploying-with-npm-private-modules | disabled |
|
||||
| headers | list | No | authorization: "Bearer SecretJWToken==" | all | list of custom headers for the uplink | disabled |
|
||||
| strict_ssl | boolean | No | [true,false] | >= 3.0 | If true, requires SSL certificates be valid. | true |
|
||||
|
||||
> The `auth` property allows you to use a auth token via an environment variable, [clik here for an example](https://github.com/verdaccio/verdaccio/releases/tag/v2.5.0).
|
||||
|
||||
### You Must know
|
||||
|
||||
* Verdaccio does not use Basic Authentication since version `v2.3.0`. All tokens generated by verdaccio are based on JWT ([JSON Web Token](https://jwt.io/))
|
||||
* Uplinks must be registries compatible with the `npm` endpoints. Eg: *verdaccio*, `sinopia@1.4.0`, *npmjs registry*, *yarn registry*, *JFrog*, *Nexus* and more.
|
||||
* Setting `cache` to false will help to save space in your hard drive. This will avoid store `tarballs` but [it will keep metadata in folders](https://github.com/verdaccio/verdaccio/issues/391).
|
||||
* Exceed with multiple uplinks might slow down the lookup of your packages due for each request a npm client does, verdaccio does 1 call for each uplink.
|
||||
|
|
|
@ -2,7 +2,44 @@
|
|||
id: what-is-verdaccio
|
||||
title: "What is Verdaccio?"
|
||||
---
|
||||
## In a nutshell
|
||||
Verdaccio is a **lightweight private npm proxy registry** built in **Node.js**
|
||||
|
||||
## What's a registry
|
||||
|
||||
* A repository for packages that implements the **CommonJS Compliant Package Registry specification** for reading package info
|
||||
* Provide an API compatible with npm clients **(yarn/npm/pnpm)**
|
||||
* Follow the semantic Versioning compatible **(semver)**
|
||||
|
||||
$> verdaccio
|
||||
|
||||
|
||||

|
||||
|
||||
## Using Verdaccio
|
||||
|
||||
Using verdaccio with any node package manager client is quite straightforward.
|
||||
|
||||

|
||||
|
||||
You can use a custom registry either setting globally for all your projects
|
||||
|
||||
npm set registry http://localhost:4873
|
||||
|
||||
|
||||
or by command line as argument `--registry` in npm (slightly different in yarn)
|
||||
|
||||
npm install lodash --registry http://localhost:4873
|
||||
|
||||
|
||||
## Private
|
||||
|
||||
All packages that you publish are private and only accessible based in your configuration.
|
||||
|
||||
## Proxy
|
||||
|
||||
Verdaccio cache all dependencies by demand and speed up installations in local or private networks.
|
||||
|
||||
## Verdaccio in a nutshell
|
||||
|
||||
* It's a web app based on Node.js
|
||||
* It's a private npm registry
|
||||
|
@ -11,18 +48,5 @@ title: "What is Verdaccio?"
|
|||
* It's a fairly easy install and use
|
||||
* We offer Docker and Kubernetes support
|
||||
* It is 100% compatible with yarn, npm and pnpm
|
||||
* It was born based on `sinopia@1.4.0` fork and *backward compatible*
|
||||
* Verdaccio means **A green color popular in late medieval Italy for fresco painting**.
|
||||
|
||||
## What's a registry
|
||||
|
||||
* A repository for packages that implements the CommonJS Compliant Package Registry specification for reading package info
|
||||
* Store npm packages
|
||||
* Provide an API compatible with npm clients
|
||||
* Semantic Versioning (semver) compatible
|
||||
|
||||
```bash curl -v https://registry.npmjs.org/aaa
|
||||
|
||||
* Connected to registry.npmjs.org (151.101.12.162) port 443 (#0)
|
||||
|
||||
* Connection #0 to host registry.npmjs.org left intact {"_id":"aaa","_rev":"6-ad86dfc8720569871753b5bf561f2741","name":"aaa","description":"aaa...","dist-tags":{"latest":"0.0.2"},"versions":{"0.0.1":{"name":"aaa","version":"0.0.1","description":"aaa...","main":"index.js","scripts":{"test":"test.js"},"repository":{"type":"git","url":"http:/www.google.git"},"keywords":["math"],"author":{"name":"peter"},"license":"BSD","_id":"aaa@0.0.1","dist": {"shasum":"a04fa88ad887a70dd5429652ce23823619dfd7c3","tarball":"https://registry.npmjs.org/aaa/-/aaa-0.0.1.tgz"},"_npmVersion":"1.1.62","_npmUser":{"name":"erhu65","email":"erhu65@gmail.com"},"maintainers":[{"name":"erhu65","email":"erhu65@gmail.com"}],"directories":{}},"0.0.2":{"name":"aaa","version":"0.0.2","description":"aaa...","main":"index.js","scripts":{"test":"test.js"},"repository":{"type":"git","url":"http:/www.google.git"},"keywords":["math"],"author":{"name":"peter"},"license":"BSD","_id":"aaa@0.0.2","dist": {"shasum":"acd2f632b94b0f89765e75bb7b7549ce5b01caa2","tarball":"https://registry.npmjs.org/aaa/-/aaa-0.0.2.tgz"},"_npmVersion":"1.1.62","_npmUser":{"name":"erhu65","email":"erhu65@gmail.com"},"maintainers":[{"name":"erhu65","email":"erhu65@gmail.com"}],"directories":{}}},"readme":"ERROR: No README.md file found!","maintainers":[{"name":"erhu65","email":"erhu65@gmail.com"}],"timmacbook-j:verdaccio.mmacbookmacbook-j:verdaccio.master.git jpicmacbook-j:verdaccio.master.git jpicmacbookmacbookmacbookmacbookmacbook ````
|
||||
* It was **forked** based on `sinopia@1.4.0` and 100% **backward compatible**.
|
||||
* Verdaccio means **A green color popular in late medieval Italy for fresco painting**.
|
|
@ -2,12 +2,18 @@
|
|||
id: docker
|
||||
title: Docker
|
||||
---
|
||||
<div class="docker-count">
|
||||

|
||||
</div>
|
||||
|
||||
To pull the latest pre-built [docker image](https://hub.docker.com/r/verdaccio/verdaccio/):
|
||||
|
||||
```bash
|
||||
docker pull verdaccio/verdaccio
|
||||
```
|
||||
|
||||

|
||||
|
||||
## Tagged Versions
|
||||
|
||||
Since version `v2.x` you can pull docker images by [tag](https://hub.docker.com/r/verdaccio/verdaccio/tags/), as follows:
|
||||
|
@ -59,7 +65,7 @@ V_PATH=/path/for/verdaccio; docker run -it --rm --name verdaccio -p 4873:4873 \
|
|||
verdaccio/verdaccio
|
||||
```
|
||||
|
||||
> Note: Verdaccio runs as a non-root user (uid=101, gid=101) inside the container, if you use bind mount to override default, you need to make sure the mount directory is assigned to the right user. In above example, you need to run `sudo chown -R 101:101 /opt/verdaccio` otherwise you will get permission errors at runtime. [Use docker volume](https://docs.docker.com/storage/volumes/) is recommended over using bind mount.
|
||||
> Note: Verdaccio runs as a non-root user (uid=100, gid=101) inside the container, if you use bind mount to override default, you need to make sure the mount directory is assigned to the right user. In above example, you need to run `sudo chown -R 100:101 /opt/verdaccio` otherwise you will get permission errors at runtime. [Use docker volume](https://docs.docker.com/storage/volumes/) is recommended over using bind mount.
|
||||
|
||||
### Docker and custom port configuration
|
||||
|
||||
|
|
|
@ -28,6 +28,8 @@ or using `yarn`
|
|||
yarn global add verdaccio
|
||||
```
|
||||
|
||||

|
||||
|
||||
### Beta
|
||||
|
||||
⚠️⚠️ **Help us to test the version 3.x in order to release a stable version soon. Remember, to do never test with your original storage folder, do always a backup** ⚠️⚠️
|
||||
|
|
|
@ -25,23 +25,24 @@ uplinks:
|
|||
|
||||
You can define mutiple uplinks and each of them must have an unique name (key). They can have two properties:
|
||||
|
||||
| Property | Type | Required | Example | Support | Description | Default |
|
||||
| ------------ | ------- | -------- | ----------------------------------------------------------------------------------- | ------- | ------------------------------------------------------------------------------------------------------------------ | ---------- |
|
||||
| url | string | Yes | https://registry.npmjs.org/ | all | The registry url | npmjs |
|
||||
| ca | string | No | ~./ssl/client.crt' | all | SSL path certificate | No default |
|
||||
| timeout | string | No | 100ms | all | set new timeout for the request | 30s |
|
||||
| maxage | string | No | 10m | all | limit maximun failure request | 2m |
|
||||
| fail_timeout | string | No | 10m | all | defines max time when a request becomes a failure | 5m |
|
||||
| max_fails | number | No | 2 | all | limit maximun failure request | 2 |
|
||||
| cache | boolean | No | [true,false] | >= 2.1 | avoid cache tarballs | true |
|
||||
| auth | list | No | type: [bearer,basic], [token: "token",token_env: [true,\<get name process.env\>]] | >= 2.5 | assigns the header 'Authorization' see: http://blog.npmjs.org/post/118393368555/deploying-with-npm-private-modules | disabled |
|
||||
| headers | list | No | authorization: "Basic YourBase64EncodedCredentials==" | all | list of custom headers for the uplink | disabled |
|
||||
| strict_ssl | boolean | No | [true,false] | >= 3.0 | If true, requires SSL certificates be valid. | true |
|
||||
| Property | Type | Required | Example | Support | Description | Default |
|
||||
| ------------ | ------- | -------- | ----------------------------------------------------------------------------- | ------- | ------------------------------------------------------------------------------------------------------------------ | ---------- |
|
||||
| url | string | Yes | https://registry.npmjs.org/ | all | The registry url | npmjs |
|
||||
| ca | string | No | ~./ssl/client.crt' | all | SSL path certificate | No default |
|
||||
| timeout | string | No | 100ms | all | set new timeout for the request | 30s |
|
||||
| maxage | string | No | 10m | all | limit maximun failure request | 2m |
|
||||
| fail_timeout | string | No | 10m | all | defines max time when a request becomes a failure | 5m |
|
||||
| max_fails | number | No | 2 | all | limit maximun failure request | 2 |
|
||||
| cache | boolean | No | [true,false] | >= 2.1 | avoid cache tarballs | true |
|
||||
| auth | list | No | type: [bearer], [token: "token",token_env: [true,\<get name process.env\>]] | >= 2.5 | assigns the header 'Authorization' see: http://blog.npmjs.org/post/118393368555/deploying-with-npm-private-modules | disabled |
|
||||
| headers | list | No | authorization: "Bearer SecretJWToken==" | all | list of custom headers for the uplink | disabled |
|
||||
| strict_ssl | boolean | No | [true,false] | >= 3.0 | If true, requires SSL certificates be valid. | true |
|
||||
|
||||
> The `auth` property allows you to use a auth token via an environment variable, [clik here for an example](https://github.com/verdaccio/verdaccio/releases/tag/v2.5.0).
|
||||
|
||||
### You Must know
|
||||
|
||||
* Verdaccio does not use Basic Authentication since version `v2.3.0`. All tokens generated by verdaccio are based on JWT ([JSON Web Token](https://jwt.io/))
|
||||
* Uplinks must be registries compatible with the `npm` endpoints. Eg: *verdaccio*, `sinopia@1.4.0`, *npmjs registry*, *yarn registry*, *JFrog*, *Nexus* and more.
|
||||
* Setting `cache` to false will help to save space in your hard drive. This will avoid store `tarballs` but [it will keep metadata in folders](https://github.com/verdaccio/verdaccio/issues/391).
|
||||
* Exceed with multiple uplinks might slow down the lookup of your packages due for each request a npm client does, verdaccio does 1 call for each uplink.
|
||||
|
|
|
@ -2,7 +2,44 @@
|
|||
id: what-is-verdaccio
|
||||
title: "What is Verdaccio?"
|
||||
---
|
||||
## In a nutshell
|
||||
Verdaccio is a **lightweight private npm proxy registry** built in **Node.js**
|
||||
|
||||
## What's a registry
|
||||
|
||||
* A repository for packages that implements the **CommonJS Compliant Package Registry specification** for reading package info
|
||||
* Provide an API compatible with npm clients **(yarn/npm/pnpm)**
|
||||
* Follow the semantic Versioning compatible **(semver)**
|
||||
|
||||
$> verdaccio
|
||||
|
||||
|
||||

|
||||
|
||||
## Using Verdaccio
|
||||
|
||||
Using verdaccio with any node package manager client is quite straightforward.
|
||||
|
||||

|
||||
|
||||
You can use a custom registry either setting globally for all your projects
|
||||
|
||||
npm set registry http://localhost:4873
|
||||
|
||||
|
||||
or by command line as argument `--registry` in npm (slightly different in yarn)
|
||||
|
||||
npm install lodash --registry http://localhost:4873
|
||||
|
||||
|
||||
## Private
|
||||
|
||||
All packages that you publish are private and only accessible based in your configuration.
|
||||
|
||||
## Proxy
|
||||
|
||||
Verdaccio cache all dependencies by demand and speed up installations in local or private networks.
|
||||
|
||||
## Verdaccio in a nutshell
|
||||
|
||||
* It's a web app based on Node.js
|
||||
* It's a private npm registry
|
||||
|
@ -11,18 +48,5 @@ title: "What is Verdaccio?"
|
|||
* It's a fairly easy install and use
|
||||
* We offer Docker and Kubernetes support
|
||||
* It is 100% compatible with yarn, npm and pnpm
|
||||
* It was born based on `sinopia@1.4.0` fork and *backward compatible*
|
||||
* Verdaccio means **A green color popular in late medieval Italy for fresco painting**.
|
||||
|
||||
## What's a registry
|
||||
|
||||
* A repository for packages that implements the CommonJS Compliant Package Registry specification for reading package info
|
||||
* Store npm packages
|
||||
* Provide an API compatible with npm clients
|
||||
* Semantic Versioning (semver) compatible
|
||||
|
||||
```bash curl -v https://registry.npmjs.org/aaa
|
||||
|
||||
* Connected to registry.npmjs.org (151.101.12.162) port 443 (#0)
|
||||
|
||||
* Connection #0 to host registry.npmjs.org left intact {"_id":"aaa","_rev":"6-ad86dfc8720569871753b5bf561f2741","name":"aaa","description":"aaa...","dist-tags":{"latest":"0.0.2"},"versions":{"0.0.1":{"name":"aaa","version":"0.0.1","description":"aaa...","main":"index.js","scripts":{"test":"test.js"},"repository":{"type":"git","url":"http:/www.google.git"},"keywords":["math"],"author":{"name":"peter"},"license":"BSD","_id":"aaa@0.0.1","dist": {"shasum":"a04fa88ad887a70dd5429652ce23823619dfd7c3","tarball":"https://registry.npmjs.org/aaa/-/aaa-0.0.1.tgz"},"_npmVersion":"1.1.62","_npmUser":{"name":"erhu65","email":"erhu65@gmail.com"},"maintainers":[{"name":"erhu65","email":"erhu65@gmail.com"}],"directories":{}},"0.0.2":{"name":"aaa","version":"0.0.2","description":"aaa...","main":"index.js","scripts":{"test":"test.js"},"repository":{"type":"git","url":"http:/www.google.git"},"keywords":["math"],"author":{"name":"peter"},"license":"BSD","_id":"aaa@0.0.2","dist": {"shasum":"acd2f632b94b0f89765e75bb7b7549ce5b01caa2","tarball":"https://registry.npmjs.org/aaa/-/aaa-0.0.2.tgz"},"_npmVersion":"1.1.62","_npmUser":{"name":"erhu65","email":"erhu65@gmail.com"},"maintainers":[{"name":"erhu65","email":"erhu65@gmail.com"}],"directories":{}}},"readme":"ERROR: No README.md file found!","maintainers":[{"name":"erhu65","email":"erhu65@gmail.com"}],"timmacbook-j:verdaccio.mmacbookmacbook-j:verdaccio.master.git jpicmacbook-j:verdaccio.master.git jpicmacbookmacbookmacbookmacbookmacbook ````
|
||||
* It was **forked** based on `sinopia@1.4.0` and 100% **backward compatible**.
|
||||
* Verdaccio means **A green color popular in late medieval Italy for fresco painting**.
|
|
@ -2,12 +2,18 @@
|
|||
id: docker
|
||||
title: Docker
|
||||
---
|
||||
<div class="docker-count">
|
||||

|
||||
</div>
|
||||
|
||||
To pull the latest pre-built [docker image](https://hub.docker.com/r/verdaccio/verdaccio/):
|
||||
|
||||
```bash
|
||||
docker pull verdaccio/verdaccio
|
||||
```
|
||||
|
||||

|
||||
|
||||
## Tagged Versions
|
||||
|
||||
Since version `v2.x` you can pull docker images by [tag](https://hub.docker.com/r/verdaccio/verdaccio/tags/), as follows:
|
||||
|
@ -59,7 +65,7 @@ V_PATH=/path/for/verdaccio; docker run -it --rm --name verdaccio -p 4873:4873 \
|
|||
verdaccio/verdaccio
|
||||
```
|
||||
|
||||
> Note: Verdaccio runs as a non-root user (uid=101, gid=101) inside the container, if you use bind mount to override default, you need to make sure the mount directory is assigned to the right user. In above example, you need to run `sudo chown -R 101:101 /opt/verdaccio` otherwise you will get permission errors at runtime. [Use docker volume](https://docs.docker.com/storage/volumes/) is recommended over using bind mount.
|
||||
> Note: Verdaccio runs as a non-root user (uid=100, gid=101) inside the container, if you use bind mount to override default, you need to make sure the mount directory is assigned to the right user. In above example, you need to run `sudo chown -R 100:101 /opt/verdaccio` otherwise you will get permission errors at runtime. [Use docker volume](https://docs.docker.com/storage/volumes/) is recommended over using bind mount.
|
||||
|
||||
### Docker and custom port configuration
|
||||
|
||||
|
|
|
@ -28,6 +28,8 @@ npm install -g verdaccio
|
|||
yarn global add verdaccio
|
||||
```
|
||||
|
||||

|
||||
|
||||
### Beta
|
||||
|
||||
⚠️⚠️ **Help us to test the version 3.x in order to release a stable version soon. Remember, to do never test with your original storage folder, do always a backup** ⚠️⚠️
|
||||
|
|
|
@ -25,23 +25,24 @@ uplinks:
|
|||
|
||||
You can define mutiple uplinks and each of them must have an unique name (key). They can have two properties:
|
||||
|
||||
| Property | Type | Required | Example | Support | Description | Default |
|
||||
| ------------ | ------- | -------- | ----------------------------------------------------------------------------------- | ------- | ------------------------------------------------------------------------------------------------------------------ | ---------- |
|
||||
| url | string | Yes | https://registry.npmjs.org/ | all | The registry url | npmjs |
|
||||
| ca | string | No | ~./ssl/client.crt' | all | SSL path certificate | No default |
|
||||
| timeout | string | No | 100ms | all | set new timeout for the request | 30s |
|
||||
| maxage | string | No | 10m | all | limit maximun failure request | 2m |
|
||||
| fail_timeout | string | No | 10m | all | defines max time when a request becomes a failure | 5m |
|
||||
| max_fails | number | No | 2 | all | limit maximun failure request | 2 |
|
||||
| cache | boolean | No | [true,false] | >= 2.1 | avoid cache tarballs | true |
|
||||
| auth | list | No | type: [bearer,basic], [token: "token",token_env: [true,\<get name process.env\>]] | >= 2.5 | assigns the header 'Authorization' see: http://blog.npmjs.org/post/118393368555/deploying-with-npm-private-modules | disabled |
|
||||
| headers | list | No | authorization: "Basic YourBase64EncodedCredentials==" | all | list of custom headers for the uplink | disabled |
|
||||
| strict_ssl | boolean | No | [true,false] | >= 3.0 | If true, requires SSL certificates be valid. | true |
|
||||
| Property | Type | Required | Example | Support | Description | Default |
|
||||
| ------------ | ------- | -------- | ----------------------------------------------------------------------------- | ------- | ------------------------------------------------------------------------------------------------------------------ | ---------- |
|
||||
| url | string | Yes | https://registry.npmjs.org/ | all | The registry url | npmjs |
|
||||
| ca | string | No | ~./ssl/client.crt' | all | SSL path certificate | No default |
|
||||
| timeout | string | No | 100ms | all | set new timeout for the request | 30s |
|
||||
| maxage | string | No | 10m | all | limit maximun failure request | 2m |
|
||||
| fail_timeout | string | No | 10m | all | defines max time when a request becomes a failure | 5m |
|
||||
| max_fails | number | No | 2 | all | limit maximun failure request | 2 |
|
||||
| cache | boolean | No | [true,false] | >= 2.1 | avoid cache tarballs | true |
|
||||
| auth | list | No | type: [bearer], [token: "token",token_env: [true,\<get name process.env\>]] | >= 2.5 | assigns the header 'Authorization' see: http://blog.npmjs.org/post/118393368555/deploying-with-npm-private-modules | disabled |
|
||||
| headers | list | No | authorization: "Bearer SecretJWToken==" | all | list of custom headers for the uplink | disabled |
|
||||
| strict_ssl | boolean | No | [true,false] | >= 3.0 | If true, requires SSL certificates be valid. | true |
|
||||
|
||||
> The `auth` property allows you to use a auth token via an environment variable, [clik here for an example](https://github.com/verdaccio/verdaccio/releases/tag/v2.5.0).
|
||||
|
||||
### You Must know
|
||||
|
||||
* Verdaccio does not use Basic Authentication since version `v2.3.0`. All tokens generated by verdaccio are based on JWT ([JSON Web Token](https://jwt.io/))
|
||||
* Uplinks must be registries compatible with the `npm` endpoints. Eg: *verdaccio*, `sinopia@1.4.0`, *npmjs registry*, *yarn registry*, *JFrog*, *Nexus* and more.
|
||||
* Setting `cache` to false will help to save space in your hard drive. This will avoid store `tarballs` but [it will keep metadata in folders](https://github.com/verdaccio/verdaccio/issues/391).
|
||||
* Exceed with multiple uplinks might slow down the lookup of your packages due for each request a npm client does, verdaccio does 1 call for each uplink.
|
||||
|
|
|
@ -2,7 +2,44 @@
|
|||
id: what-is-verdaccio
|
||||
title: "What is Verdaccio?"
|
||||
---
|
||||
## In a nutshell
|
||||
Verdaccio is a **lightweight private npm proxy registry** built in **Node.js**
|
||||
|
||||
## What's a registry
|
||||
|
||||
* A repository for packages that implements the **CommonJS Compliant Package Registry specification** for reading package info
|
||||
* Provide an API compatible with npm clients **(yarn/npm/pnpm)**
|
||||
* Follow the semantic Versioning compatible **(semver)**
|
||||
|
||||
$> verdaccio
|
||||
|
||||
|
||||

|
||||
|
||||
## Using Verdaccio
|
||||
|
||||
Using verdaccio with any node package manager client is quite straightforward.
|
||||
|
||||

|
||||
|
||||
You can use a custom registry either setting globally for all your projects
|
||||
|
||||
npm set registry http://localhost:4873
|
||||
|
||||
|
||||
or by command line as argument `--registry` in npm (slightly different in yarn)
|
||||
|
||||
npm install lodash --registry http://localhost:4873
|
||||
|
||||
|
||||
## Private
|
||||
|
||||
All packages that you publish are private and only accessible based in your configuration.
|
||||
|
||||
## Proxy
|
||||
|
||||
Verdaccio cache all dependencies by demand and speed up installations in local or private networks.
|
||||
|
||||
## Verdaccio in a nutshell
|
||||
|
||||
* It's a web app based on Node.js
|
||||
* It's a private npm registry
|
||||
|
@ -11,18 +48,5 @@ title: "What is Verdaccio?"
|
|||
* It's a fairly easy install and use
|
||||
* We offer Docker and Kubernetes support
|
||||
* It is 100% compatible with yarn, npm and pnpm
|
||||
* It was born based on `sinopia@1.4.0` fork and *backward compatible*
|
||||
* Verdaccio means **A green color popular in late medieval Italy for fresco painting**.
|
||||
|
||||
## What's a registry
|
||||
|
||||
* A repository for packages that implements the CommonJS Compliant Package Registry specification for reading package info
|
||||
* Store npm packages
|
||||
* Provide an API compatible with npm clients
|
||||
* Semantic Versioning (semver) compatible
|
||||
|
||||
```bash curl -v https://registry.npmjs.org/aaa
|
||||
|
||||
* Connected to registry.npmjs.org (151.101.12.162) port 443 (#0)
|
||||
|
||||
* Connection #0 to host registry.npmjs.org left intact {"_id":"aaa","_rev":"6-ad86dfc8720569871753b5bf561f2741","name":"aaa","description":"aaa...","dist-tags":{"latest":"0.0.2"},"versions":{"0.0.1":{"name":"aaa","version":"0.0.1","description":"aaa...","main":"index.js","scripts":{"test":"test.js"},"repository":{"type":"git","url":"http:/www.google.git"},"keywords":["math"],"author":{"name":"peter"},"license":"BSD","_id":"aaa@0.0.1","dist": {"shasum":"a04fa88ad887a70dd5429652ce23823619dfd7c3","tarball":"https://registry.npmjs.org/aaa/-/aaa-0.0.1.tgz"},"_npmVersion":"1.1.62","_npmUser":{"name":"erhu65","email":"erhu65@gmail.com"},"maintainers":[{"name":"erhu65","email":"erhu65@gmail.com"}],"directories":{}},"0.0.2":{"name":"aaa","version":"0.0.2","description":"aaa...","main":"index.js","scripts":{"test":"test.js"},"repository":{"type":"git","url":"http:/www.google.git"},"keywords":["math"],"author":{"name":"peter"},"license":"BSD","_id":"aaa@0.0.2","dist": {"shasum":"acd2f632b94b0f89765e75bb7b7549ce5b01caa2","tarball":"https://registry.npmjs.org/aaa/-/aaa-0.0.2.tgz"},"_npmVersion":"1.1.62","_npmUser":{"name":"erhu65","email":"erhu65@gmail.com"},"maintainers":[{"name":"erhu65","email":"erhu65@gmail.com"}],"directories":{}}},"readme":"ERROR: No README.md file found!","maintainers":[{"name":"erhu65","email":"erhu65@gmail.com"}],"timmacbook-j:verdaccio.mmacbookmacbook-j:verdaccio.master.git jpicmacbook-j:verdaccio.master.git jpicmacbookmacbookmacbookmacbookmacbook ````
|
||||
* It was **forked** based on `sinopia@1.4.0` and 100% **backward compatible**.
|
||||
* Verdaccio means **A green color popular in late medieval Italy for fresco painting**.
|
Loading…
Add table
Reference in a new issue