Как взаимодействовать с уже запущенным экземпляром через терминал в Mongooseim?
Я использую Mongooseim 3.2.0 из исходного кода на сервере Ubuntu. Ниже приведены проблемы:
- Каков наилучший способ запуска mongooseim в качестве службы, чтобы он автоматически перезагружался в случае сбоя mongooseim или перезапуска системы?
- Как взаимодействовать через терминал с уже запущенным экземпляром 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.