0
Fork 0
mirror of https://github.com/verdaccio/verdaccio.git synced 2024-12-16 21:56:25 -05:00

docs(readme): update readme

This commit is contained in:
Juan Picado @jotadeveloper 2018-02-11 12:30:16 +01:00 committed by GitHub
parent 89cd52759b
commit 9693b1b157
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

108
README.md
View file

@ -3,6 +3,7 @@
### A lightweight private npm proxy registry ### A lightweight private npm proxy registry
`verdaccio` is a fork of `sinopia`. It aims to keep backwards compatibility with `sinopia`, while keeping up with npm changes. `verdaccio` is a fork of `sinopia`. It aims to keep backwards compatibility with `sinopia`, while keeping up with npm changes.
[![CircleCI](https://circleci.com/gh/verdaccio/verdaccio/tree/master.svg?style=svg)](https://circleci.com/gh/verdaccio/verdaccio/tree/master) [![CircleCI](https://circleci.com/gh/verdaccio/verdaccio/tree/master.svg?style=svg)](https://circleci.com/gh/verdaccio/verdaccio/tree/master)
@ -15,12 +16,17 @@
[![codecov](https://codecov.io/gh/verdaccio/verdaccio/branch/master/graph/badge.svg)](https://codecov.io/gh/verdaccio/verdaccio) [![codecov](https://codecov.io/gh/verdaccio/verdaccio/branch/master/graph/badge.svg)](https://codecov.io/gh/verdaccio/verdaccio)
<p align="center"><img src="https://firebasestorage.googleapis.com/v0/b/jotadeveloper-website.appspot.com/o/verdaccio_long_video2.gif?alt=media&token=4d20cad1-f700-4803-be14-4b641c651b41"></p> <p align="center"><img src="https://firebasestorage.googleapis.com/v0/b/jotadeveloper-website.appspot.com/o/verdaccio_long_video2.gif?alt=media&token=4d20cad1-f700-4803-be14-4b641c651b41"></p>
It allows you to have a **local npm private registry with zero configuration**. You don't have to install and replicate an entire database. Verdaccio keeps its own small database and, if a package doesn't exist there, **it asks any other registry** (npmjs.org) for it keeping only those packages you use. It allows you to have a **local npm private registry with zero configuration**. You don't have to install and replicate an entire database. Verdaccio keeps its own small database and, if a package doesn't exist there, **it asks any other registry** (npmjs.org) for it keeping only those packages you use.
## Quick Links
* [Documentation](http://www.verdaccio.org/docs/en/installation.html)
* [Chat](https://gitter.im/verdaccio/questions)
* [Roadmap](https://github.com/verdaccio/verdaccio/wiki)
## Introduction ## Introduction
### Use private packages ### Use private packages
@ -37,17 +43,10 @@ It allows you to have a **local npm private registry with zero configuration**.
If you want to use a modified version of some 3rd-party package (for example, you found a bug, but maintainer didn't accept pull request yet), you can publish your version locally under the same name. If you want to use a modified version of some 3rd-party package (for example, you found a bug, but maintainer didn't accept pull request yet), you can publish your version locally under the same name.
See in detail each of these [use cases](https://github.com/verdaccio/verdaccio/tree/master/wiki/use-cases.md). See in detail each of these [use cases](https://github.com/verdaccio/verdaccio/tree/master/docs/use-cases.md).
## Get Started ## Get Started
**Help? Don't miss the [documentation section](wiki/README.md)**
### Prerequisites
* Node.js >= `2.x` (4.6.1) | `master` (6.12.0)
* `npm` or `yarn`
Installation and starting (application will create default config in config.yaml you can edit later) Installation and starting (application will create default config in config.yaml you can edit later)
```bash ```bash
@ -73,45 +72,23 @@ Now you can navigate to [http://localhost:4873/](http://localhost:4873/) where y
> Warning: Verdaccio does not currently support PM2's cluster mode, running it with cluster mode may cause unknown behavior. > Warning: Verdaccio does not currently support PM2's cluster mode, running it with cluster mode may cause unknown behavior.
## Future releases
If you are an adventurous developer you can use and install the latest versions available, remember it's a non stable version and I'd recommend only use for testing purporses.
#### Alpha #### Alpha
Alpha software can be unstable and could cause crashes or data loss and may not contain all of the features that are planned for the final version. ⚠️⚠️ **Please, help us to test the version 3.x in order to release a stable version soon. Do never test with your original storage folder, do always a backup** ⚠️⚠️
Using `npm` or `yarn` If you are an adventurous developer you can use and install the latest beta version, this is a non stable version, I'd recommend only use for testing purporses.
```bash ```bash
npm install -g verdaccio@alpha $ npm install -g verdaccio@alpha
``` ```
or using docker
Docker `alpha` image is also available.
```bash ```bash
$ docker run -it --rm --name verdaccio -p 4873:4873 verdaccio/verdaccio:alpha $ docker run -it --rm --name verdaccio -p 4873:4873 verdaccio/verdaccio:alpha
``` ```
#### Beta
At this point the development is done but there are possibilities that it could contain some bugs and performance issues
```bash
npm install -g verdaccio@beta
```
Docker `beta` image is also available.
```bash
$ docker run -it --rm --name verdaccio -p 4873:4873 verdaccio/verdaccio:beta
```
## Publishing Private Packages ## Publishing Private Packages
#### Create an user and log in #### Create an user and log in
```bash ```bash
@ -126,16 +103,10 @@ npm publish --registry http://localhost:4873
This will prompt you for user credentials which will be saved on the `verdaccio` server. This will prompt you for user credentials which will be saved on the `verdaccio` server.
## Server Side Configuration
When you start a server, it auto-creates a config file. For instructions on how to run Verdaccio as a service, with a nice URL or behind a proxy have a look at the [server-side configure document](https://github.com/verdaccio/verdaccio/blob/master/docs/server.md).
## Docker ## Docker
[![dockeri.co](http://dockeri.co/image/verdaccio/verdaccio)](https://hub.docker.com/r/verdaccio/verdaccio/)
Below are the most commony needed informations, Below are the most commony needed informations,
every aspect of Docker and verdaccio is [documented separately](https://github.com/verdaccio/verdaccio/blob/master/docs/docker.md) every aspect of Docker and verdaccio is [documented separately](http://www.verdaccio.org/docs/en/docker.html)
### Prebuilt images ### Prebuilt images
@ -165,36 +136,6 @@ $ docker-compose up --build
``` ```
Docker examples are available [in this repository](https://github.com/verdaccio/docker-examples). Docker examples are available [in this repository](https://github.com/verdaccio/docker-examples).
* Docker + Nginx
* Docker + Kubernetes
* Docker + Apache
### Advanced Infrastructure Management Tools
#### Ansible
A Verdaccio playbook [is available at galaxy](https://galaxy.ansible.com/030/verdaccio)
Source: [https://github.com/verdaccio/ansible-verdaccio](https://github.com/verdaccio/ansible-verdaccio)
Maintainer: [@030](https://github.com/030)
#### Chef
The Verdaccio Chef cookbook [is available via the chef supermarket](https://supermarket.chef.io/cookbooks/verdaccio).
Source: [https://github.com/verdaccio/verdaccio-cookbook](https://github.com/verdaccio/verdaccio-cookbook).
Maintainer: [@kgrubb](https://github.com/kgrubb)
#### Puppet
Source: [https://github.com/verdaccio/puppet-verdaccio](https://github.com/verdaccio/puppet-verdaccio).
Maintainer: *No asigned yet*
## Compatibility ## Compatibility
Verdaccio aims to support all features of a standard npm client that make sense to support in private repository. Unfortunately, it isn't always possible. Verdaccio aims to support all features of a standard npm client that make sense to support in private repository. Unfortunately, it isn't always possible.
@ -221,31 +162,10 @@ Verdaccio aims to support all features of a standard npm client that make sense
- Starring (npm star, npm unstar) - not supported, doesn't make sense in private registry - Starring (npm star, npm unstar) - not supported, doesn't make sense in private registry
- Ping (npm ping) - **supported** - Ping (npm ping) - **supported**
## Storage
No CouchDB here. **This application is supposed to work with zero configuration**, so filesystem is used as a storage.
If you want to use a database instead, ask for it, we'll come up with some kind of a plugin system.
About the storage there is a running discussion [here](https://github.com/verdaccio/verdaccio/issues?q=is%3Aissue+is%3Aopen+label%3Astorage).
## Similar existing things
- npm + git (I mean, using git+ssh:// dependencies) - most people seem to use this, but it's a terrible idea... *npm update* doesn't work, can't use git subdirectories this way, etc.
- [reggie](https://github.com/mbrevoort/node-reggie) - this looks very interesting indeed... I might borrow some code there.
- [shadow-npm](https://github.com/dominictarr/shadow-npm), [public service](http://shadow-npm.net/) - it uses the same code as npmjs.org + service is dead
- [gemfury](http://www.gemfury.com/l/npm-registry) and others - those are closed-source cloud services, and I'm not in a mood to trust my private code to somebody (security through obscurity yeah!)
- npm-registry-proxy, npm-delegate, npm-proxy - those are just proxies...
- [nexus-repository-oss](https://www.sonatype.com/nexus-repository-oss) - Repository manager that handles more than just NPM dependencies
- Is there something else?
- [codebox-npm](https://github.com/craftship/codebox-npm) - Serverless private npm registry using
- [local-npm](https://github.com/nolanlawson/local-npm) - Local and offline-first npm mirror
## FAQ / Contact / Troubleshoot ## FAQ / Contact / Troubleshoot
If you have any issue you can try the following options, do no desist to ask or check our issues database, perhaps someone has asked already what you are looking for. If you have any issue you can try the following options, do no desist to ask or check our issues database, perhaps someone has asked already what you are looking for.
* [Documentation](wiki/README.md)
* [Roadmap](https://github.com/verdaccio/verdaccio/wiki) * [Roadmap](https://github.com/verdaccio/verdaccio/wiki)
* [Most common questions](https://github.com/verdaccio/verdaccio/issues?utf8=%E2%9C%93&q=is%3Aissue%20label%3Aquestion%20) * [Most common questions](https://github.com/verdaccio/verdaccio/issues?utf8=%E2%9C%93&q=is%3Aissue%20label%3Aquestion%20)
* [Reporting a bug](https://github.com/verdaccio/verdaccio/blob/master/CONTRIBUTING.md#reporting-a-bug) * [Reporting a bug](https://github.com/verdaccio/verdaccio/blob/master/CONTRIBUTING.md#reporting-a-bug)
@ -253,8 +173,8 @@ If you have any issue you can try the following options, do no desist to ask or
* [Chat Room](https://gitter.im/verdaccio/) * [Chat Room](https://gitter.im/verdaccio/)
* [Logos](https://github.com/verdaccio/verdaccio/tree/master/assets) * [Logos](https://github.com/verdaccio/verdaccio/tree/master/assets)
## License ## License
Verdaccio is [MIT licensed](https://github.com/verdaccio/verdaccio/blob/master/LICENSE). Verdaccio is [MIT licensed](https://github.com/verdaccio/verdaccio/blob/master/LICENSE).
The Verdaccio documentation and logos (e.g., .md, .png, .sketch) files in the /wiki and /assets folder) is [Creative Commons licensed](https://github.com/verdaccio/verdaccio/blob/master/LICENSE-docs). The Verdaccio documentation and logos (e.g., .md, .png, .sketch) files in the /wiki and /assets folder) is [Creative Commons licensed](https://github.com/verdaccio/verdaccio/blob/master/LICENSE-docs).