Попытка запустить pm2-runtime с 3 экземплярами для MEAN-приложения - PullRequest
0 голосов
/ 21 декабря 2018

Я пытаюсь запустить существующее приложение стека MEAN в контейнере Docker с помощью следующей команды Docker:

CMD ["pm2-runtime", "-i", "3", "npm", "--", "run-script", "start:prod"]

Эта команда запускает 3 экземпляра PM2, однако кажется, что часть npm непри выполнении части run-script, и в каждом случае она зависает со следующим сообщением:

Usage: npm <command>
where <command> is one of:
    access, adduser, bin, bugs, c, cache, completion, config,
    ddp, dedupe, deprecate, dist-tag, docs, edit, explore, get,
    help, help-search, i, init, install, install-test, it, link,
    list, ln, login, logout, ls, outdated, owner, pack, ping,
    prefix, prune, publish, rb, rebuild, repo, restart, root,
    run, run-script, s, se, search, set, shrinkwrap, star,
    stars, start, stop, t, tag, team, test, tst, un, uninstall,

Если я удаляю часть "- i", "3" , она корректно запускается 1Экземпляр приложения в режиме «ветвления».

Кто-нибудь знает, какой будет правильный синтаксис для запуска 3 экземпляров, учитывая, что он использует NPM с run-script?

Спасибо

1 Ответ

0 голосов
/ 21 декабря 2018

-- - специфическая bash функция, которая обозначает конец параметров командной строки.

Однако вы не запускаете bash, но вызываете двоичный файл pm2-runtime и передаете аргументы вЭто.

Таким образом, это по сути эквивалентно вызову npm с -- в качестве команды.

Я думаю, что -- можно удалить и он должен работать.

...