Как взаимодействовать с уже запущенным экземпляром через терминал в Mongooseim?

Я использую Mongooseim 3.2.0 из исходного кода на сервере Ubuntu. Ниже приведены проблемы:

  1. Каков наилучший способ запуска mongooseim в качестве службы, чтобы он автоматически перезагружался в случае сбоя mongooseim или перезапуска системы?
  2. Как взаимодействовать через терминал с уже запущенным экземпляром mongooseim на сервере ubuntu, например, "mongooseimctl live". Мое предположение, что "mongooseimctl live" попытается создать еще один экземпляр. Я просто хочу видеть живые журналы и взаимодействие и не хочу продолжать прокручивать длинные файлы журналов для этой цели.

Я прошу прощения, если ответ на вышеуказанный вопрос очевиден, но просто хочу следовать лучшим указаниям.

1 ответ

Решение

mongooseimctl live или же mongooseimctl foreground в основном полезен для разработки или дымового тестирования развертывания (если вы не работаете внутри контейнера). Для реальных случаев использования вы должны запустить сервер в фоновом режиме с mongooseimctl start,

Вернуться к контейнеру - лучший подход для контейнерных приложений - запускать их на переднем плане, поэтому в сценарии запуска контейнера используйте mongooseimctl foreground,

После запуска сервера (независимо от того, как он был запущен) можно подключить оболочку для устранения проблем. mongooseimctl debug, Эта команда используется, когда вы получаете Protocol 'inet_tcp': the name mongooseim@localhost seems to be in use by another Erlang node ошибка. Будьте осторожны, если это производственная среда - вы можете легко отключить сервер, получив доступ к этой оболочке.

Если вы просто заинтересованы в просмотре журналов, без интерактивного доступа к внутренним компонентам сервера, который предлагает оболочка, просто tail -f /your-configured-mongooseim-log-dir/* должно быть достаточно.


В настоящее время Ubuntu использует systemd для управления временем жизни своих сервисов. Системный .service файл можно найти по адресу https://github.com/esl/MongooseIM/blob/master/tools/pkg/platforms/debian_stretch/files/build/mongooseim.service - мы используем его для упаковки в пакеты Debian/Ubuntu .deb.

Другие вопросы по тегам