Как остановить приложение на Heroku?


200

У меня есть приложение на Heroku, которое используется немногими пользователями. Тем не менее, я заметил, что есть некоторые проблемы с данными, которые я хотел бы исправить и остановить приложение, чтобы пользователи не вводили ничего нового.

Есть ли способ остановить приложение на героку, а не уничтожить его? Я вижу, что команда перезагрузки сервера есть ... хотя я не вижу ничего, как "остановить"

Ответы:


306

Чтобы полностью «остановить» ваше приложение, вы можете уменьшить до нуля веб-динос, что фактически переведет все http-процессы вашего приложения в автономный режим.

$ heroku ps:scale web=0
Scaling web processes... done, now running 0

5
Извините, noobness, похоже, какие-либо команды могут быть подходящими. Приветствия
jrob00

10
Когда вы исправите то, что хотите, не забывайте делать: heroku ps:scale web=1снова, иначе ваше приложение никогда не
оживет

11
Это правильное решение. Режим обслуживания на самом деле не останавливает приложение, он только предотвращает трафик к нему. Это должен быть принятый ответ.
Джофф

1
В Rails, если в вашем Procfile есть строка, начинающаяся с web, используйте heroku ps:scale web=0, иначе вы можете получитьno such process type app defined in Procfile.
Minh Triet

2
Имейте в виду, что если вы перечислили другие типы процессов в вашем Procfile, вам также необходимо установить их на ноль.
user3344977

173

http://devcenter.heroku.com/articles/maintenance-mode

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

$ heroku maintenance:on
Maintenance mode enabled.

и позже

$ heroku maintenance:off
Maintenance mode disabled.

1
Мне нужно было закрыть приложение Heroku, чтобы протестировать службу мониторинга (Pingdom). Кажется, что нет способа полностью остановить приложение, не разрушая его, режим обслуживания возвращает HTTP-статус 503, поэтому он подходит для запуска службы мониторинга.
Джо Лисс

39

Иди к своей приборной панели на героку. Выберите приложение. Есть раздел динамов. Просто потяните ползунки для динамометров вниз (уменьшение динамометров влево) до количества динамов, которые вы хотите запустить. Слайдер переходит на 0. Затем сохраните ваши изменения. Boom.

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


5
Ах, спасибо. В новой панели инструментов сначала нужно нажать на маленький значок карандаша, чтобы перевести приложение в режим редактирования, а затем вы можете работать с ползунком.
MWP

31

Возможно, вам придется быть более конкретным и указать имя приложения (это название приложения, которое вы ввели в heroku). Например:

heroku ps:scale web=0 --app myAppName 

В противном случае вы можете получить следующее сообщение:

 % heroku ps:scale web=0
Scaling dynos... failed
 !    No app specified.
 !    Run this command from an app folder or specify which app to use with --app APP.


6

Вы можете отключить приложение с помощью включения режима обслуживания из панели администратора.

  • Перейти на вкладки настроек.
  • Внизу перед удалением приложения. включить режим обслуживания. смотрите на скриншоте ниже.

введите описание изображения здесь


Простой в использовании и элегантный.
Томер

1
Режим обслуживания не останавливает dyno, он просто блокирует все входящие HTTP-запросы. Если у вас запущен какой-то фоновый процесс, он продолжит работать. Смотрите документацию Heroku: devcenter.heroku.com/articles/maintenance-mode
Антуан Белевр

3

Если вы используете плагин eclipse, дважды щелкните имя приложения в My Heroku Applications. На вкладке «Процессы» нажмите кнопку «Масштаб». Появится небольшое окно. Увеличьте / уменьшите счет и просто скажите ОК.


2

УДАЛИТЬ ваше приложение Heroku

Это для тех, кто хочет УДАЛИТЬ приложение на своем аккаунте Heroku. Иногда вы попадаете сюда, когда пытаетесь узнать, как удалить / удалить приложение.

ВНИМАНИЕ: это необратимо!

  • Перейдите к своей панели Heroku здесь
  • Выберите приложение, которое вы хотите удалить.
  • Прокрутите вниз до нижней части страницы настроек для этого приложения.
  • Нажмите красную кнопку Удалить приложение ...

ОП прямо заявили, что хотят «остановить приложение на героку, а не уничтожить его». Я только указываю на это, потому что по какой-то причине Bing показывает этот ответ как ответ.
Йоши Асхарун

Спасибо! Может быть, это следует перенести в другую область?
CodeValve

2

Чтобы добавить к ответам выше: если вы хотите остановить Dyno с помощью панели администратора, текущее решение на бесплатном уровне:

  1. Открытое приложение
  2. На вкладке «Обзор» в разделе «Формирование Dyno» нажмите «Настройка Dyno».
  3. В нужном ряду раздела «Free Dynos» нажмите на значок карандаша справа
  4. Нажмите на синий элемент управления вкл / выкл, а затем нажмите «Подтвердить»

Надеюсь это поможет.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.