mirror of
https://github.com/verdaccio/verdaccio.git
synced 2025-03-04 02:02:39 -05:00
* docs(website): new translation for logo.md in Korean * docs(website): new translation for logo.md in Polish * docs(website): new translation for logo.md in Portuguese * docs(website): new translation for logo.md in Russian * docs(website): new translation for logo.md in Serbian (Cyrillic) * docs(website): new translation for logo.md in Chinese Simplified * docs(website): new translation for logo.md in Chinese Traditional * docs(website): new translation for logo.md in Vietnamese * docs(website): new translation for logo.md in Galician * docs(website): new translation for logo.md in Portuguese, Brazilian * docs(website): new translation for logo.md in Hindi * docs(website): new translation for logger.md in Hindi * docs(website): new translation for logger.md in Galician * docs(website): new translation for linking.md in Chinese Simplified * docs(website): new translation for logger.md in Spanish * docs(website): new translation for linking.md in Chinese Traditional * docs(website): new translation for linking.md in Vietnamese * docs(website): new translation for linking.md in Galician * docs(website): new translation for amazon.md in French * docs(website): new translation for linking.md in Hindi * docs(website): new translation for linking.md in Filipino * docs(website): new translation for linking.md in Serbian (Latin) * docs(website): new translation for linking.md in Tajik * docs(website): new translation for linking.md in Yoruba * docs(website): new translation for logger.md in Romanian * docs(website): new translation for logger.md in French * docs(website): new translation for logger.md in Arabic * docs(website): new translation for logger.md in Vietnamese * docs(website): new translation for logger.md in Czech * docs(website): new translation for logger.md in German * docs(website): new translation for logger.md in Italian * docs(website): new translation for logger.md in Japanese * docs(website): new translation for logger.md in Korean * docs(website): new translation for logger.md in Polish * docs(website): new translation for logger.md in Portuguese * docs(website): new translation for logger.md in Russian * docs(website): new translation for logger.md in Serbian (Cyrillic) * docs(website): new translation for logger.md in Chinese Simplified * docs(website): new translation for logger.md in Chinese Traditional * docs(website): new translation for install.md in Arabic * docs(website): new translation for reverse-proxy.md in German * docs(website): new translation for repositories.md in Hindi * docs(website): new translation for repositories.md in Filipino * docs(website): new translation for repositories.md in Serbian (Latin) * docs(website): new translation for repositories.md in Tajik * docs(website): new translation for repositories.md in Yoruba * docs(website): new translation for reverse-proxy.md in Romanian * docs(website): new translation for reverse-proxy.md in French * docs(website): new translation for reverse-proxy.md in Spanish * docs(website): new translation for reverse-proxy.md in Arabic * docs(website): new translation for reverse-proxy.md in Czech * docs(website): new translation for reverse-proxy.md in Italian * docs(website): new translation for repositories.md in Galician * docs(website): new translation for reverse-proxy.md in Japanese * docs(website): new translation for reverse-proxy.md in Korean * docs(website): new translation for reverse-proxy.md in Polish * docs(website): new translation for reverse-proxy.md in Portuguese * docs(website): new translation for reverse-proxy.md in Russian * docs(website): new translation for reverse-proxy.md in Serbian (Cyrillic) * docs(website): new translation for reverse-proxy.md in Chinese Simplified * docs(website): new translation for reverse-proxy.md in Chinese Traditional * docs(website): new translation for reverse-proxy.md in Vietnamese * docs(website): new translation for reverse-proxy.md in Galician * docs(website): new translation for reverse-proxy.md in Portuguese, Brazilian * docs(website): new translation for repositories.md in Portuguese, Brazilian * docs(website): new translation for repositories.md in Vietnamese * docs(website): new translation for reverse-proxy.md in Filipino * docs(website): new translation for repositories.md in French * docs(website): new translation for puppet.md in Chinese Simplified * docs(website): new translation for puppet.md in Chinese Traditional * docs(website): new translation for puppet.md in Vietnamese * docs(website): new translation for puppet.md in Galician * docs(website): new translation for puppet.md in Portuguese, Brazilian * docs(website): new translation for puppet.md in Hindi * docs(website): new translation for puppet.md in Filipino * docs(website): new translation for puppet.md in Serbian (Latin) * docs(website): new translation for puppet.md in Tajik * docs(website): new translation for puppet.md in Yoruba * docs(website): new translation for repositories.md in Romanian * docs(website): new translation for repositories.md in Spanish * docs(website): new translation for repositories.md in Chinese Traditional * docs(website): new translation for repositories.md in Arabic * docs(website): new translation for repositories.md in Czech * docs(website): new translation for repositories.md in German * docs(website): new translation for repositories.md in Italian * docs(website): new translation for repositories.md in Japanese * docs(website): new translation for repositories.md in Korean * docs(website): new translation for repositories.md in Polish * docs(website): new translation for repositories.md in Portuguese * docs(website): new translation for repositories.md in Russian * docs(website): new translation for repositories.md in Serbian (Cyrillic) * docs(website): new translation for repositories.md in Chinese Simplified * docs(website): new translation for reverse-proxy.md in Hindi * docs(website): new translation for reverse-proxy.md in Serbian (Latin) * docs(website): new translation for puppet.md in Russian * docs(website): new translation for server.md in Chinese Traditional * docs(website): new translation for server.md in Czech * docs(website): new translation for server.md in German * docs(website): new translation for server.md in Italian * docs(website): new translation for server.md in Japanese * docs(website): new translation for server.md in Korean * docs(website): new translation for server.md in Polish * docs(website): new translation for server.md in Portuguese * docs(website): new translation for server.md in Russian * docs(website): new translation for server.md in Serbian (Cyrillic) * docs(website): new translation for server.md in Chinese Simplified * docs(website): new translation for server.md in Vietnamese * docs(website): new translation for server.md in Spanish * docs(website): new translation for server.md in Galician * docs(website): new translation for server.md in Portuguese, Brazilian * docs(website): new translation for server.md in Hindi * docs(website): new translation for server.md in Filipino * docs(website): new translation for server.md in Serbian (Latin) * docs(website): new translation for server.md in Tajik * docs(website): new translation for server.md in Yoruba * docs(website): new translation for ssl.md in Romanian * docs(website): new translation for ssl.md in French * docs(website): new translation for ssl.md in Spanish * docs(website): new translation for ssl.md in Arabic * docs(website): new translation for server.md in Arabic * docs(website): new translation for server.md in French * docs(website): new translation for reverse-proxy.md in Tajik * docs(website): new translation for reverse-proxy.md in Yoruba * docs(website): new translation for server.md in Romanian * docs(website): new translation for puppet.md in Serbian (Cyrillic) * docs(website): new translation for puppet.md in Portuguese * docs(website): new translation for plugins.md in French * docs(website): new translation for plugins.md in Romanian * docs(website): new translation for plugins.md in Spanish * docs(website): new translation for puppet.md in Polish * docs(website): new translation for protect-your-dependencies.md in Filipino * docs(website): new translation for protect-your-dependencies.md in Polish * docs(website): new translation for protect-your-dependencies.md in Portuguese * docs(website): new translation for protect-your-dependencies.md in Russian * docs(website): new translation for protect-your-dependencies.md in Serbian (Cyrillic) * docs(website): new translation for protect-your-dependencies.md in Chinese Simplified * docs(website): new translation for protect-your-dependencies.md in Chinese Traditional * docs(website): new translation for protect-your-dependencies.md in Vietnamese * docs(website): new translation for protect-your-dependencies.md in Galician * docs(website): new translation for protect-your-dependencies.md in Portuguese, Brazilian * docs(website): new translation for protect-your-dependencies.md in Hindi * docs(website): new translation for protect-your-dependencies.md in Serbian (Latin) * docs(website): new translation for protect-your-dependencies.md in Japanese * docs(website): new translation for protect-your-dependencies.md in Tajik * docs(website): new translation for protect-your-dependencies.md in Yoruba * docs(website): new translation for puppet.md in Romanian * docs(website): new translation for puppet.md in French * docs(website): new translation for puppet.md in Spanish * docs(website): new translation for puppet.md in Arabic * docs(website): new translation for puppet.md in Czech * docs(website): new translation for puppet.md in German * docs(website): new translation for puppet.md in Italian * docs(website): new translation for puppet.md in Japanese * docs(website): new translation for puppet.md in Korean * docs(website): new translation for protect-your-dependencies.md in Korean * docs(website): new translation for protect-your-dependencies.md in Italian * docs(website): new translation for plugins.md in Arabic * docs(website): new translation for plugins.md in Vietnamese * docs(website): new translation for plugins.md in Czech * docs(website): new translation for plugins.md in German * docs(website): new translation for plugins.md in Italian * docs(website): new translation for plugins.md in Japanese * docs(website): new translation for plugins.md in Korean * docs(website): new translation for plugins.md in Polish * docs(website): new translation for plugins.md in Portuguese * docs(website): new translation for plugins.md in Russian * docs(website): new translation for plugins.md in Serbian (Cyrillic) * docs(website): new translation for plugins.md in Chinese Simplified * docs(website): new translation for plugins.md in Chinese Traditional * docs(website): new translation for plugins.md in Galician * docs(website): new translation for protect-your-dependencies.md in German * docs(website): new translation for plugins.md in Portuguese, Brazilian * docs(website): new translation for plugins.md in Hindi * docs(website): new translation for plugins.md in Filipino * docs(website): new translation for plugins.md in Serbian (Latin) * docs(website): new translation for plugins.md in Tajik * docs(website): new translation for plugins.md in Yoruba * docs(website): new translation for protect-your-dependencies.md in Romanian * docs(website): new translation for protect-your-dependencies.md in French * docs(website): new translation for protect-your-dependencies.md in Spanish * docs(website): new translation for protect-your-dependencies.md in Arabic * docs(website): new translation for protect-your-dependencies.md in Czech * docs(website): new translation for install.md in Czech * docs(website): new translation for linking.md in Portuguese, Brazilian * docs(website): new translation for install.md in Spanish * docs(website): new translation for caching.md in Serbian (Cyrillic) * docs(website): new translation for caching.md in Spanish * docs(website): new translation for caching.md in Arabic * docs(website): new translation for caching.md in Czech * docs(website): new translation for caching.md in German * docs(website): new translation for caching.md in Italian * docs(website): new translation for caching.md in Japanese * docs(website): new translation for caching.md in Korean * docs(website): new translation for caching.md in Polish * docs(website): new translation for caching.md in Portuguese * docs(website): new translation for caching.md in Russian * docs(website): new translation for caching.md in Chinese Simplified * docs(website): new translation for caching.md in Romanian * docs(website): new translation for caching.md in Chinese Traditional * docs(website): new translation for caching.md in Vietnamese * docs(website): new translation for caching.md in Galician * docs(website): new translation for caching.md in Portuguese, Brazilian * docs(website): new translation for caching.md in Hindi * docs(website): new translation for caching.md in Filipino * docs(website): new translation for caching.md in Serbian (Latin) * docs(website): new translation for install.md in French * docs(website): new translation for caching.md in Yoruba * docs(website): new translation for chef.md in Romanian * docs(website): new translation for chef.md in French * docs(website): new translation for caching.md in French * docs(website): new translation for best-practices.md in Yoruba * docs(website): new translation for chef.md in Arabic * docs(website): new translation for best-practices.md in Korean * docs(website): new translation for best-practices.md in Romanian * docs(website): new translation for who-is-using.md in Russian * docs(website): new translation for windows.md in Serbian (Latin) * docs(website): new translation for windows.md in Tajik * docs(website): new translation for windows.md in Yoruba * docs(website): new translation for windows.md in Hindi * docs(website): new translation for en.json in Chinese Simplified * docs(website): new translation for windows.md in Filipino * docs(website): new translation for windows.md in Portuguese, Brazilian * docs(website): new translation for who-is-using.md in Serbian (Cyrillic) * docs(website): new translation for windows.md in Spanish * docs(website): new translation for who-is-using.md in Chinese Simplified * docs(website): new translation for who-is-using.md in Chinese Traditional * docs(website): new translation for who-is-using.md in Vietnamese * docs(website): new translation for who-is-using.md in Galician * docs(website): new translation for who-is-using.md in Portuguese, Brazilian * docs(website): new translation for who-is-using.md in Hindi * docs(website): new translation for who-is-using.md in Filipino * docs(website): new translation for who-is-using.md in Serbian (Latin) * docs(website): new translation for who-is-using.md in Tajik * docs(website): new translation for who-is-using.md in Yoruba * docs(website): new translation for windows.md in Romanian * docs(website): new translation for windows.md in French * docs(website): new translation for windows.md in Arabic * docs(website): new translation for windows.md in Galician * docs(website): new translation for windows.md in Czech * docs(website): new translation for windows.md in German * docs(website): new translation for windows.md in Italian * docs(website): new translation for windows.md in Japanese * docs(website): new translation for windows.md in Korean * docs(website): new translation for windows.md in Polish * docs(website): new translation for windows.md in Portuguese * docs(website): new translation for windows.md in Russian * docs(website): new translation for windows.md in Serbian (Cyrillic) * docs(website): new translation for windows.md in Chinese Simplified * docs(website): new translation for windows.md in Chinese Traditional * docs(website): new translation for windows.md in Vietnamese
140 lines
5.9 KiB
Markdown
140 lines
5.9 KiB
Markdown
---
|
||
id: plugins
|
||
title: "Plugins"
|
||
---
|
||
|
||
Verdaccio is a pluggable application. It can be extended in many ways, either new authentication methods, adding endpoints or using a custom storage.
|
||
|
||
There are 5 types of plugins:
|
||
|
||
* [Authentication](plugin-auth.md)
|
||
* [Middleware](plugin-middleware.md)
|
||
* [Меморија за складиштење](plugin-storage.md)
|
||
* Custom Theme and filters
|
||
|
||
> Ако сте заинтересовани да развијете сопствени plugin, прочитајте [development](dev-plugins.md) секцију.
|
||
|
||
## Коришћење
|
||
|
||
### Инсталација
|
||
|
||
```bash
|
||
$> npm install --global verdaccio-activedirectory
|
||
```
|
||
|
||
`verdaccio` as a sinopia fork it has backward compability with plugins that are compatible with `sinopia@1.4.0`. In such case the installation is the same.
|
||
|
||
```
|
||
$> npm install --global sinopia-memory
|
||
```
|
||
|
||
### Конфигурисање
|
||
|
||
Отворите `config.yaml` фајл и урадите update `auth` секције према следећим упутствима:
|
||
|
||
Подразумевана конфигурација изгледа овако, јер користимо уграђени `htpasswd` plugin као подразумеван, а који можете зауставити (disable) тако што ћете следеће линије претворити у коментар.
|
||
|
||
|
||
### Authentication Configuration
|
||
|
||
```yaml
|
||
htpasswd:
|
||
file: ./htpasswd
|
||
# max_users: 1000
|
||
```
|
||
|
||
и заменити их са датим (ако се одлучите да користите `ldap` plugin).
|
||
|
||
```yaml
|
||
auth:
|
||
activedirectory:
|
||
url: "ldap://10.0.100.1"
|
||
baseDN: 'dc=sample,dc=local'
|
||
domainSuffix: 'sample.local'
|
||
```
|
||
|
||
#### Multiple Authentication plugins
|
||
|
||
This is technically possible, making the plugin order important, as the credentials will be resolved in order.
|
||
|
||
```yaml
|
||
auth:
|
||
htpasswd:
|
||
file: ./htpasswd
|
||
#max_users: 1000
|
||
activedirectory:
|
||
url: "ldap://10.0.100.1"
|
||
baseDN: 'dc=sample,dc=local'
|
||
domainSuffix: 'sample.local'
|
||
```
|
||
|
||
### Middleware Configuration
|
||
|
||
This is an example how to set up a middleware plugin. All middleware plugins must be defined in the **middlewares** namespace.
|
||
|
||
```yaml
|
||
middlewares:
|
||
audit:
|
||
enabled: true
|
||
```
|
||
|
||
> Можете пратити [audit middle plugin](https://github.com/verdaccio/verdaccio-audit) као базични пример.
|
||
|
||
### Storage Configuration
|
||
|
||
This is an example how to set up a storage plugin. All storage plugins must be defined in the **store** namespace.
|
||
|
||
```yaml
|
||
store:
|
||
memory:
|
||
limit: 1000
|
||
```
|
||
|
||
### Theme Configuration
|
||
|
||
Verdaccio allows to replace the User Interface with a custom one, we call it **theme**. By default, uses `@verdaccio/ui-theme` that comes built-in, but, you can use something different installing your own plugin.
|
||
|
||
```bash
|
||
|
||
$> npm install --global verdaccio-theme-dark
|
||
|
||
```
|
||
|
||
> The plugin name prefix must start with `verdaccio-theme`, otherwise the plugin won't load.
|
||
|
||
|
||
You can load only one theme at a time and pass through options if you need it.
|
||
|
||
```yaml
|
||
theme:
|
||
dark:
|
||
option1: foo
|
||
option2: bar
|
||
```
|
||
|
||
## Традиционални плугини (Legacy plugins)
|
||
|
||
### Sinopia Plugins
|
||
|
||
> If you are relying on any sinopia plugin, remember are deprecated and might no work in the future.
|
||
|
||
* [sinopia-npm](https://www.npmjs.com/package/sinopia-npm): auth plugin за sinopia који подржава npm registry.
|
||
* [sinopia-memory](https://www.npmjs.com/package/sinopia-memory): auth plugin за sinopia који чува кориснике у меморији.
|
||
* [sinopia-github-oauth-cli](https://www.npmjs.com/package/sinopia-github-oauth-cli).
|
||
* [sinopia-crowd](https://www.npmjs.com/package/sinopia-crowd): auth plugin за sinopia који подржава atlassian crowd.
|
||
* [sinopia-activedirectory](https://www.npmjs.com/package/sinopia-activedirectory): Active Directory authentication plugin за sinopia.
|
||
* [sinopia-github-oauth](https://www.npmjs.com/package/sinopia-github-oauth): authentication plugin за sinopia2, подржава github oauth web flow.
|
||
* [sinopia-delegated-auth](https://www.npmjs.com/package/sinopia-delegated-auth): Sinopia authentication plugin који delegira authentifikaciju за други HTTP URL
|
||
* [sinopia-altldap](https://www.npmjs.com/package/sinopia-altldap): Алтернативни LDAP Auth plugin за Sinopia
|
||
* [sinopia-request](https://www.npmjs.com/package/sinopia-request): Једноставан и целовит auth-plugin са конфигурацијом за коришћењем екстерних API.
|
||
* [sinopia-htaccess-gpg-email](https://www.npmjs.com/package/sinopia-htaccess-gpg-email): Генерише password у htaccess формату, encrypt са GPG и шаље преко MailGun API до корисника.
|
||
* [sinopia-mongodb](https://www.npmjs.com/package/sinopia-mongodb): Једноставан и целовит auth-plugin са конфигурацијом за коришћење mongodb database.
|
||
* [sinopia-htpasswd](https://www.npmjs.com/package/sinopia-htpasswd): auth plugin за sinopia који подржава htpasswd формат.
|
||
* [sinopia-leveldb](https://www.npmjs.com/package/sinopia-leveldb): a leveldb подржан auth plugin за sinopia private npm.
|
||
* [sinopia-gitlabheres](https://www.npmjs.com/package/sinopia-gitlabheres): Gitlab authentication plugin за sinopia.
|
||
* [sinopia-gitlab](https://www.npmjs.com/package/sinopia-gitlab): Gitlab authentication plugin за sinopia
|
||
* [sinopia-ldap](https://www.npmjs.com/package/sinopia-ldap): LDAP auth plugin за sinopia.
|
||
* [sinopia-github-oauth-env](https://www.npmjs.com/package/sinopia-github-oauth-env) Sinopia authentication plugin са github oauth web flow.
|
||
|
||
> Сви sinopia plugins-и, требало би да буду компатибилни са свим будућим верзијама verdaccio-а. Anyhow, we encourage contributors to migrate them to the modern verdaccio API and using the prefix as *verdaccio-xx-name*.
|
||
|