Невозможно использовать npm в любом контейнере Docker - PullRequest
0 голосов
/ 11 января 2019

Я пытаюсь установить пакет artillery NPM, используя npm, в Docker-контейнере с npm install -g artillery. Однако он висит с этим сообщением

[..................] / rollbackFailedOptional: verb npm-session 005fda8725330544

Изначально я попытался использовать образ debian: stretch docker, установив nodejs и npm с apt. Я также попробовал официальный образ докера node и образ alpineapk add nodejs npm. Все они имеют такую ​​же ошибку.

У меня есть рабочая сеть в контейнерах, и я вижу, что реестр NPM нормально работает во всех различных контейнерах Docker

# curl http://registry.npmjs.org/
{"db_name":"registry","doc_count":1114477,"doc_del_count":341,"update_seq":16317727,"purge_seq":0,"compact_running":false,"disk_size":13471206003,"data_size":11114653800,"instance_start_time":"1547073780489012","disk_format_version":6,"committed_update_seq":16317727}

У большинства людей с этой ошибкой возникают проблемы с прокси, но у меня нет установленных прокси-серверов, и я не пытался их установить. Я оставил конфигурацию по умолчанию:

# npm config list
; cli configs
metrics-registry = "https://registry.npmjs.org/"
scope = ""
user-agent = "npm/6.4.1 node/v8.15.0 linux x64"

; node bin location = /usr/bin/node
; cwd = /
; HOME = /root
; "npm config ls -l" to show all defaults.

Самое странное, если я вместо этого создаю виртуальную машину Ubuntu (, а не контейнер), устанавливаю node и npm с apt, узел работает просто отлично! Кажется, это проблема с докером.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...