mirror of
https://github.com/verdaccio/verdaccio.git
synced 2024-11-17 07:45:52 +01:00
5980708f00
* New translations test.md (Portuguese, Brazilian) docs(website): new translations * New translations ansible.md (Russian) docs(website): new translations * New translations auth.md (Russian) docs(website): new translations * New translations reverse-proxy.md (Russian) docs(website): new translations * New translations logo.md (Russian) docs(website): new translations * New translations chef.md (Russian) docs(website): new translations * New translations puppet.md (Russian) docs(website): new translations * New translations ci.md (Russian) docs(website): new translations * New translations what-is-verdaccio.md (Russian) docs(website): new translations * New translations node-api.md (Russian) docs(website): new translations * New translations windows.md (Russian) docs(website): new translations * New translations web.md (Russian) docs(website): new translations * New translations use-cases.md (Russian) docs(website): new translations * New translations uplinks.md (Russian) docs(website): new translations * New translations test.md (Russian) docs(website): new translations * New translations ssl.md (Russian) docs(website): new translations * New translations server.md (Russian) docs(website): new translations * New translations repositories.md (Russian) docs(website): new translations * New translations build.md (Russian) docs(website): new translations * New translations protect-your-dependencies.md (Russian) docs(website): new translations * New translations plugins.md (Russian) docs(website): new translations * New translations packages.md (Russian) docs(website): new translations * New translations notifications.md (Russian) docs(website): new translations * New translations logger.md (Russian) docs(website): new translations * New translations kubernetes.md (Russian) docs(website): new translations * New translations install.md (Russian) docs(website): new translations * New translations iis-server.md (Russian) docs(website): new translations * New translations docker.md (Russian) docs(website): new translations * New translations dev-plugins.md (Russian) docs(website): new translations * New translations contributing.md (Russian) docs(website): new translations * New translations config.md (Russian) docs(website): new translations * New translations cli.md (Russian) docs(website): new translations * New translations ansible.md (Serbian (Cyrillic)) docs(website): new translations * New translations reverse-proxy.md (Polish) docs(website): new translations * New translations logo.md (Polish) docs(website): new translations * New translations chef.md (Polish) docs(website): new translations * New translations puppet.md (Polish) docs(website): new translations * New translations ci.md (Polish) docs(website): new translations * New translations what-is-verdaccio.md (Polish) docs(website): new translations * New translations node-api.md (Polish) docs(website): new translations * New translations windows.md (Polish) docs(website): new translations * New translations web.md (Polish) docs(website): new translations * New translations use-cases.md (Polish) docs(website): new translations * New translations uplinks.md (Polish) docs(website): new translations * New translations test.md (Polish) docs(website): new translations * New translations ssl.md (Polish) docs(website): new translations * New translations server.md (Polish) docs(website): new translations * New translations repositories.md (Polish) docs(website): new translations * New translations protect-your-dependencies.md (Polish) docs(website): new translations * New translations plugins.md (Polish) docs(website): new translations * New translations packages.md (Polish) docs(website): new translations * New translations notifications.md (Polish) docs(website): new translations * New translations logger.md (Polish) docs(website): new translations * New translations kubernetes.md (Polish) docs(website): new translations * New translations install.md (Polish) docs(website): new translations * New translations iis-server.md (Polish) docs(website): new translations * New translations docker.md (Polish) docs(website): new translations * New translations dev-plugins.md (Polish) docs(website): new translations * New translations contributing.md (Polish) docs(website): new translations * New translations config.md (Polish) docs(website): new translations * New translations cli.md (Polish) docs(website): new translations * New translations test.md (Portuguese) docs(website): new translations * New translations auth.md (Serbian (Cyrillic)) docs(website): new translations * New translations auth.md (Polish) docs(website): new translations * New translations test.md (Spanish) docs(website): new translations * New translations ansible.md (Vietnamese) docs(website): new translations * New translations auth.md (Vietnamese) docs(website): new translations * New translations reverse-proxy.md (Vietnamese) docs(website): new translations * New translations logo.md (Vietnamese) docs(website): new translations * New translations chef.md (Vietnamese) docs(website): new translations * New translations puppet.md (Vietnamese) docs(website): new translations * New translations ci.md (Vietnamese) docs(website): new translations * New translations what-is-verdaccio.md (Vietnamese) docs(website): new translations * New translations node-api.md (Vietnamese) docs(website): new translations * New translations windows.md (Vietnamese) docs(website): new translations * New translations web.md (Vietnamese) docs(website): new translations * New translations use-cases.md (Vietnamese) docs(website): new translations * New translations uplinks.md (Vietnamese) docs(website): new translations * New translations test.md (Vietnamese) docs(website): new translations * New translations ssl.md (Vietnamese) docs(website): new translations * New translations server.md (Vietnamese) docs(website): new translations * New translations repositories.md (Vietnamese) docs(website): new translations * New translations build.md (Vietnamese) docs(website): new translations * New translations protect-your-dependencies.md (Vietnamese) docs(website): new translations * New translations plugins.md (Vietnamese) docs(website): new translations * New translations packages.md (Vietnamese) docs(website): new translations * New translations notifications.md (Vietnamese) docs(website): new translations * New translations logger.md (Vietnamese) docs(website): new translations * New translations kubernetes.md (Vietnamese) docs(website): new translations * New translations install.md (Vietnamese) docs(website): new translations * New translations iis-server.md (Vietnamese) docs(website): new translations * New translations docker.md (Vietnamese) docs(website): new translations * New translations dev-plugins.md (Vietnamese) docs(website): new translations * New translations contributing.md (Vietnamese) docs(website): new translations * New translations config.md (Vietnamese) docs(website): new translations * New translations cli.md (Vietnamese) docs(website): new translations * New translations build.md (Serbian (Cyrillic)) docs(website): new translations * New translations reverse-proxy.md (Serbian (Cyrillic)) docs(website): new translations * New translations logo.md (Serbian (Cyrillic)) docs(website): new translations * New translations chef.md (Serbian (Cyrillic)) docs(website): new translations * New translations puppet.md (Serbian (Cyrillic)) docs(website): new translations * New translations ci.md (Serbian (Cyrillic)) docs(website): new translations * New translations what-is-verdaccio.md (Serbian (Cyrillic)) docs(website): new translations * New translations node-api.md (Serbian (Cyrillic)) docs(website): new translations * New translations windows.md (Serbian (Cyrillic)) docs(website): new translations * New translations web.md (Serbian (Cyrillic)) docs(website): new translations * New translations use-cases.md (Serbian (Cyrillic)) docs(website): new translations * New translations uplinks.md (Serbian (Cyrillic)) docs(website): new translations * New translations test.md (Serbian (Cyrillic)) docs(website): new translations * New translations ssl.md (Serbian (Cyrillic)) docs(website): new translations * New translations server.md (Serbian (Cyrillic)) docs(website): new translations * New translations repositories.md (Serbian (Cyrillic)) docs(website): new translations * New translations protect-your-dependencies.md (Serbian (Cyrillic)) docs(website): new translations * New translations plugins.md (Serbian (Cyrillic)) docs(website): new translations * New translations packages.md (Serbian (Cyrillic)) docs(website): new translations * New translations notifications.md (Serbian (Cyrillic)) docs(website): new translations * New translations logger.md (Serbian (Cyrillic)) docs(website): new translations * New translations kubernetes.md (Serbian (Cyrillic)) docs(website): new translations * New translations install.md (Serbian (Cyrillic)) docs(website): new translations * New translations iis-server.md (Serbian (Cyrillic)) docs(website): new translations * New translations docker.md (Serbian (Cyrillic)) docs(website): new translations * New translations dev-plugins.md (Serbian (Cyrillic)) docs(website): new translations * New translations contributing.md (Serbian (Cyrillic)) docs(website): new translations * New translations config.md (Serbian (Cyrillic)) docs(website): new translations * New translations cli.md (Serbian (Cyrillic)) docs(website): new translations * New translations test.md (Serbian (Latin)) docs(website): new translations * New translations build.md (Polish) docs(website): new translations * New translations ansible.md (Polish) docs(website): new translations * New translations repositories.md (French) docs(website): new translations * New translations chef.md (French) docs(website): new translations * New translations puppet.md (French) docs(website): new translations * New translations ci.md (French) docs(website): new translations * New translations what-is-verdaccio.md (French) docs(website): new translations * New translations node-api.md (French) docs(website): new translations * New translations windows.md (French) docs(website): new translations * New translations web.md (French) docs(website): new translations * New translations use-cases.md (French) docs(website): new translations * New translations uplinks.md (French) docs(website): new translations * New translations test.md (French) docs(website): new translations * New translations ssl.md (French) docs(website): new translations * New translations server.md (French) docs(website): new translations * New translations reverse-proxy.md (French) docs(website): new translations * New translations protect-your-dependencies.md (French) docs(website): new translations * New translations plugins.md (French) docs(website): new translations * New translations packages.md (French) docs(website): new translations * New translations notifications.md (French) docs(website): new translations * New translations logger.md (French) docs(website): new translations * New translations kubernetes.md (French) docs(website): new translations * New translations install.md (French) docs(website): new translations * New translations iis-server.md (French) docs(website): new translations * New translations docker.md (French) docs(website): new translations * New translations dev-plugins.md (French) docs(website): new translations * New translations contributing.md (French) docs(website): new translations * New translations config.md (French) docs(website): new translations * New translations cli.md (French) docs(website): new translations * New translations build.md (French) docs(website): new translations * New translations logo.md (French) docs(website): new translations * New translations ansible.md (French) docs(website): new translations * New translations test.md (German) docs(website): new translations * New translations auth.md (French) docs(website): new translations * New translations test.md (Arabic) docs(website): new translations * New translations test.md (Chinese Simplified) docs(website): new translations * New translations test.md (Japanese) docs(website): new translations * New translations test.md (Korean) docs(website): new translations * New translations test.md (Hindi) docs(website): new translations * New translations ansible.md (Italian) docs(website): new translations * New translations reverse-proxy.md (Italian) docs(website): new translations * New translations logo.md (Italian) docs(website): new translations * New translations chef.md (Italian) docs(website): new translations * New translations puppet.md (Italian) docs(website): new translations * New translations ci.md (Italian) docs(website): new translations * New translations what-is-verdaccio.md (Italian) docs(website): new translations * New translations node-api.md (Italian) docs(website): new translations * New translations windows.md (Italian) docs(website): new translations * New translations web.md (Italian) docs(website): new translations * New translations use-cases.md (Italian) docs(website): new translations * New translations uplinks.md (Italian) docs(website): new translations * New translations test.md (Italian) docs(website): new translations * New translations ssl.md (Italian) docs(website): new translations * New translations server.md (Italian) docs(website): new translations * New translations repositories.md (Italian) docs(website): new translations * New translations auth.md (Italian) docs(website): new translations * New translations protect-your-dependencies.md (Italian) docs(website): new translations * New translations plugins.md (Italian) docs(website): new translations * New translations packages.md (Italian) docs(website): new translations * New translations notifications.md (Italian) docs(website): new translations * New translations logger.md (Italian) docs(website): new translations * New translations kubernetes.md (Italian) docs(website): new translations * New translations install.md (Italian) docs(website): new translations * New translations iis-server.md (Italian) docs(website): new translations * New translations docker.md (Italian) docs(website): new translations * New translations dev-plugins.md (Italian) docs(website): new translations * New translations contributing.md (Italian) docs(website): new translations * New translations config.md (Italian) docs(website): new translations * New translations cli.md (Italian) docs(website): new translations * New translations build.md (Italian) docs(website): new translations
166 lines
9.2 KiB
Markdown
166 lines
9.2 KiB
Markdown
---
|
||
id: docker
|
||
title: Docker
|
||
---
|
||
<div class="docker-count">
|
||
![alt Количество скачиваний](http://dockeri.co/image/verdaccio/verdaccio "Количество скачиваний")
|
||
</div>
|
||
|
||
Для скачивания последней версии [Docker образа](https://hub.docker.com/r/verdaccio/verdaccio/):
|
||
|
||
```bash
|
||
docker pull verdaccio/verdaccio
|
||
```
|
||
|
||
![Docker pull](/svg/docker_verdaccio.gif)
|
||
|
||
## Версии с меткой
|
||
|
||
Начиная с версии `v2.x` вы можете скачать Docker образ [тег](https://hub.docker.com/r/verdaccio/verdaccio/tags/), так:
|
||
|
||
Для базовых версий:
|
||
|
||
```bash
|
||
docker pull verdaccio/verdaccio:3
|
||
```
|
||
|
||
Для минорной версии:
|
||
|
||
```bash
|
||
docker pull verdaccio/verdaccio:3.0
|
||
```
|
||
|
||
Конкретная версия (патч):
|
||
|
||
```bash
|
||
docker pull verdaccio/verdaccio:3.0.1
|
||
```
|
||
|
||
Следующая базовая версия, при помощи тега `beta` (ветка master).
|
||
|
||
```bash
|
||
docker pull verdaccio/verdaccio:beta
|
||
```
|
||
|
||
> Если вас интересует весь список тегов, [посетите нашу страницу на сайте Docker Hub](https://hub.docker.com/r/verdaccio/verdaccio/tags/).
|
||
|
||
## Запуск verdaccio с использованием Docker
|
||
|
||
Запуск Docker контейнера:
|
||
|
||
```bash
|
||
docker run -it --rm --name verdaccio -p 4873:4873 verdaccio/verdaccio
|
||
```
|
||
|
||
Последний аргумент указывает на то, какой именно образ нужно использовать. Эта команда скачает последний образ из Docker Hub, если вы ещё не сделали этого ранее.
|
||
|
||
Если этот образ [у вас уже скачан](#build-your-own-docker-image) используйте `verdaccio` в качестве последнего аргумента.
|
||
|
||
Вы можете использовать `-v` для того, что бы примонтировать каталоги `conf`, `storage` и `plugins` к основной (host) файловой системе:
|
||
|
||
```bash
|
||
V_PATH=/path/for/verdaccio; docker run -it --rm --name verdaccio -p 4873:4873 \
|
||
-v $V_PATH/conf:/verdaccio/conf \
|
||
-v $V_PATH/storage:/verdaccio/storage \
|
||
-v $V_PATH/plugins:/verdaccio/plugins \
|
||
verdaccio/verdaccio
|
||
```
|
||
|
||
> Примечание: Verdaccio, внутри контейнера, запускается не из под root (uid=100, gid=101), если вы используете монтирование каталогов, вам необходимо убедиться, что у пользователя, из контейнера, будет доступ к этим каталогам. В примере выше, вам нужно выполнить `sudo chown -R 100:101 /opt/verdaccio` иначе вы получите ошибку прав доступа во время запуска контейнера. Рекомендуется использовать [Docker разделы](https://docs.docker.com/storage/volumes/) при монтировании каталогов.
|
||
|
||
### Плагины
|
||
|
||
Плагины могут быть установлены в отдельную директорию и смонтированы с использованием Docker или Kubernetes. Однако вам нужно убедиться, что вы используете встроенные плагины с родными зависимостями, использующими такой же базовый образ как и в Verdaccio Dockerfile.
|
||
|
||
### Docker и конфигурация пользовательского порта
|
||
|
||
В настоящее время любой `host:port`, настроенный в `conf/config.yaml` в опции `listen` игнорируется при использовании Докер.
|
||
|
||
Если вам необходимо чтобы docker-экземпляр verdaccio работал на другом порту, скажем на `5000`, в вашей `docker run` команде нужно заменить `-p 4873:4873` на `-p 5000:4873`.
|
||
|
||
В том случае, когда вам нужно указать какой порт слушать **в docker контейнере**, начиная с версии 2.?.?, вы можете указать дополнительный аргумент в `docker run`: `--env PORT=5000` Это изменит порт, который docker контейнер будет слушать и порт, который будет слушать verdaccio.
|
||
|
||
Разумеется, числа указываемые в параметре `-p` должны соответствовать, по этому предпологается, что все они должны быть одинаковыми и вы можете скопировать, вставить и запускать:
|
||
|
||
```bash
|
||
PORT=5000; docker run -it --rm --name verdaccio \
|
||
--env PORT -p $PORT:$PORT
|
||
verdaccio/verdaccio
|
||
```
|
||
|
||
### Использование HTTPS с Docker
|
||
|
||
Вы можете настроить протокол, который verdaccio будет слушать, аналогично тому, как ранее конфигурировался порт. Необходмило переопределить значение по умолчанию ("http") переменной окружения `PROTOCOL` на "https", после того, как вы укажете сертификаты в config.yaml.
|
||
|
||
```bash
|
||
PROTOCOL=https; docker run -it --rm --name verdaccio \
|
||
--env PROTOCOL -p 4873:4873
|
||
verdaccio/verdaccio
|
||
```
|
||
|
||
### Использование docker-compose
|
||
|
||
1. Возьмите последнюю версию [docker-compose](https://github.com/docker/compose).
|
||
2. Соберите и запустите контейнер:
|
||
|
||
```bash
|
||
$ docker-compose up --build
|
||
```
|
||
|
||
Вы можете указать используемый порт (внутри контейнера и снаружи) дописав перед командой `PORT=5000`.
|
||
|
||
Docker сгенерирует именованный раздел, в котором будут храниться данные приложения. Вы можете использовать `docker inspect` или `docker volume inspect` для определения физического местоположения и изменения конфигурации, например:
|
||
|
||
$ docker volume inspect verdaccio_verdaccio
|
||
[
|
||
{
|
||
"Name": "verdaccio_verdaccio",
|
||
"Driver": "local",
|
||
"Mountpoint": "/var/lib/docker/volumes/verdaccio_verdaccio/_data",
|
||
"Labels": null,
|
||
"Scope": "local"
|
||
}
|
||
]
|
||
|
||
|
||
|
||
## Сборка собственного Docker образа
|
||
|
||
```bash
|
||
docker build -t verdaccio .
|
||
```
|
||
|
||
Есть так же npm скрипт для сборки Docker образа, по этому вы можете выполнить:
|
||
|
||
```bash
|
||
npm run build:docker
|
||
```
|
||
|
||
Примечание: Первая сборки может занять несколько минут, потому что нужно выполнить `npm install`, это будет занимать много времени, всякий раз, как вы измените, что либо, что не перечислено в `.dockerignore`.
|
||
|
||
Если вам нужно использовать Docker образ на rpi или совместимом устройстве, то Dockerfile так же доступен. Для сборки Docker образа под raspberry pi выполните:
|
||
|
||
```bash
|
||
npm run build:docker:rpi
|
||
```
|
||
|
||
Имейте в виду, что для выполнения всех, представленных выше команд, Docker должен быть установлен на вашем компьютере и исполняемый файл должен быть представлен в переменной окружения `$PATH`.
|
||
|
||
## Примеры
|
||
|
||
Это отдельные репозитории, которые содержат многожество конфигураций для сборки Docker образов с `verdaccio`, для запуска обратного прокси:
|
||
|
||
<https://github.com/verdaccio/docker-examples>
|
||
|
||
## Пользовательские сборки
|
||
|
||
* [docker-verdaccio-gitlab](https://github.com/snics/docker-verdaccio-gitlab)
|
||
* [docker-verdaccio](https://github.com/deployable/docker-verdaccio)
|
||
* [docker-verdaccio-s3](https://github.com/asynchrony/docker-verdaccio-s3) Контейнер с приватным NPM, который может сохранять резервные копии на s3
|
||
* [docker-verdaccio-ldap](https://github.com/snadn/docker-verdaccio-ldap)
|
||
* [verdaccio-ldap](https://github.com/nathantreid/verdaccio-ldap)
|
||
* [verdaccio-compose-local-bridge](https://github.com/shingtoli/verdaccio-compose-local-bridge)
|
||
* [docker-verdaccio](https://github.com/Global-Solutions/docker-verdaccio)
|
||
* [verdaccio-docker](https://github.com/idahobean/verdaccio-docker)
|
||
* [verdaccio-server](https://github.com/andru255/verdaccio-server)
|
||
* [coldrye-debian-verdaccio](https://github.com/coldrye-docker/coldrye-debian-verdaccio) docker образ предоставленный verdaccio от coldrye-debian-nodejs. |