IBM Cloud: Облачный литейный завод не опрашивает экземпляр приложения (проверка работоспособности) - PullRequest
0 голосов
/ 11 сентября 2018

Я использую IBM Cloud для развертывания приложения javascript, которое действует как чат-бот слушателя на разногласия.

Когда я внедряю код, бот работает, но работает только в течение периода времени, в течение которого развертываниесценические опросы для экземпляра запущенного бота.В логах вижу:

0 of 1 instances running, 1 starting
0 of 1 instances running, 1 starting
0 of 1 instances running, 1 starting

... и т. Д.После поиска я понял, что cf опрашивает маршрут, который не должен существовать, потому что это приложение просто слушатель, поэтому я добавил последнюю строку:

no-route: true

в мой manifest.yml:

applications:
  - path: .
    name: discord-bot
    environment_json: {}
    memory: 256M
    instances: 1
    disk_quota: 1024M
    services: []
    no-route: true

Это удаляет маршрут в журналах:

Removing route discord-bot....

Однако я получаю ту же проблему, когда он опрашивает, находит 0 экземпляров и в конечном итоге выдает сообщение:

0 of 1 instances running, 1 starting
0 of 1 instances running, 1 crashed
FAILED
Error restarting application: Start unsuccessful

Поскольку я использую IBM-Cloud, я не уверен, как указывать аргументы, такие как --no-route, при загрузке приложения в командной строке, но я не думаю, что это все равно будет работать, так какстрока находится в моем manifest.yml, подтверждена на этапе развертывания, но она по-прежнему проверяет, запущено ли приложение.

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

Как мне это сделать?

1 Ответ

0 голосов
/ 11 сентября 2018

Вы должны понимать, что Cloud Foundry проверяет работоспособность приложения . По умолчанию он ожидает веб-приложение и опрашивает этот порт, даже если вам не нужен маршрут к этому приложению. Вы можете настроить другой тип проверки работоспособности в файле манифеста .

Оставьте настройку no-route и используйте process для проверки состояния.

...