¿Cómo detener una aplicación en Heroku?

199

Tengo una aplicación en Heroku que pocos usuarios utilizan. Sin embargo, noto que hay algunos problemas de datos que me gustaría solucionar y detener la aplicación mientras tanto para que los usuarios no ingresen nada nuevo.

¿Hay alguna manera de detener la aplicación en heroku en lugar de destruirla? Veo que el comando para reiniciar el servidor está allí ... aunque no veo nada como 'detener'

yuri
fuente

Respuestas:

305

Para 'detener' completamente su aplicación, puede escalar los dinamómetros web a cero, lo que efectivamente desconecta todos los procesos http de su aplicación.

$ heroku ps:scale web=0
Scaling web processes... done, now running 0
Ryan Daigle
fuente
55
Disculpe mi novato, parece que cualquiera de los comandos puede ser apropiado. Saludos
jrob00
10
Cuando haya arreglado lo que quiere, no se olvide de hacer: heroku ps:scale web=1otra vez, o su aplicación nunca revivirá ...
mjnissim
11
Esta es la solución correcta. El modo de mantenimiento en realidad no detiene la aplicación, solo evita el tráfico hacia ella. Esta debería ser la respuesta aceptada.
jhoff
1
En Rails, si su Procfile tiene una línea iniciada con la web, úsela heroku ps:scale web=0, de lo contrario puede recibirno such process type app defined in Procfile.
Minh Triet
2
Tenga en cuenta que si ha enumerado otros tipos de procesos en su Procfile, también deberá establecerlos en cero.
user3344977
173

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

Si está implementando una gran migración o necesita deshabilitar el acceso a su aplicación durante un período de tiempo prolongado, puede usar el modo de mantenimiento integrado de Heroku. Servirá una página estática a todos los visitantes, mientras le permite ejecutar tareas de rastrillo o comandos de consola.

$ heroku maintenance:on
Maintenance mode enabled.

y después

$ heroku maintenance:off
Maintenance mode disabled.
daniel
fuente
1
Necesitaba cerrar mi aplicación Heroku para probar un servicio de monitoreo (Pingdom). No parece haber una manera de detener completamente una aplicación sin destruirla, el modo de mantenimiento devuelve el estado HTTP 503, por lo que es adecuado para activar el servicio de monitoreo.
Jo Liss
39

Ve a tu tablero en heroku. Selecciona la aplicación. Hay una sección dynos. Simplemente jale los controles deslizantes para los dinamómetros hacia abajo (una disminución en los dinamómetros está a la izquierda), hasta el número de dinamómetros que desea ejecutar. El control deslizante va a 0. Luego guarde los cambios. Auge.

Según el comentario a continuación: hay que hacer clic en un ícono de lápiz para lograr esto. No lo he verificado, pero lo estoy poniendo aquí en caso de que ayude.

zero_cool
fuente
55
Ah gracias. En el panel de control más nuevo, primero debe hacer clic en el pequeño ícono de lápiz para poner la aplicación en modo de edición, luego puede trabajar el control deslizante.
mwp
31

Es posible que deba ser más específico y especificar también el nombre de la aplicación (este es el nombre de la aplicación tal como la tiene en heroku). Por ejemplo:

heroku ps:scale web=0 --app myAppName 

De lo contrario, puede recibir el siguiente mensaje:

 % 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.
maudulus
fuente
17

De la web de Heroku

Dashboard => Your App Name => Resources => Pencil icon=> Flip the switch => Confirm
Juanma Menéndez
fuente
Solución simple. Funcionando bien. :)
Naveen Kumar V
6

Puede desactivar la aplicación usando el modo de mantenimiento desde el panel de administración.

  • Vaya a las pestañas de configuración.
  • En la parte inferior, justo antes de eliminar la aplicación. habilitar el modo de mantenimiento. ver en la captura de pantalla a continuación.

ingrese la descripción de la imagen aquí

Imran Khan
fuente
Simple de usar y elegante.
Tomer
1
El modo de mantenimiento no detiene el banco de pruebas, simplemente bloquea todas las solicitudes HTTP entrantes. Si tiene algún proceso en segundo plano ejecutándose, seguirá ejecutándose. Ver documento de Heroku: devcenter.heroku.com/articles/maintenance-mode
Antoine Beloeuvre
3

Si está utilizando el complemento eclipse, haga doble clic en el nombre de la aplicación en Mis aplicaciones de Heroku. En la pestaña Procesos, presione el botón Escala. Aparecerá una pequeña ventana emergente. Aumenta / disminuye la cuenta y solo di OK.

ats
fuente
2

Para ELIMINAR tu aplicación Heroku

Esto es para aquellos que buscan ELIMINAR una aplicación en su cuenta de Heroku. A veces terminas aquí cuando intentas descubrir cómo eliminar / eliminar una aplicación.

ADVERTENCIA: ¡Esto es irreversible!

  • Ve a tu panel de control de Heroku aquí
  • Seleccione la aplicación que desea eliminar.
  • Desplácese hacia abajo hasta la parte inferior de la página de configuración de esa aplicación.
  • Presione el botón rojo Eliminar aplicación ...
CodeValve
fuente
OP declaró explícitamente que quieren "detener la aplicación en heroku en lugar de destruirla". Solo señalo esto porque, por alguna razón, Bing muestra esta respuesta como la respuesta.
Yoshi Askharoun
¡Gracias! Tal vez esto debería trasladarse a un área diferente?
CodeValve
2

Para agregar a las respuestas anteriores: si desea detener Dyno usando el panel de administración, la solución actual en el nivel gratuito:

  1. Abre la app
  2. En la pestaña Descripción general, en la sección "Formación de Dyno", haga clic en "Configurar Dynos"
  3. En la fila necesaria de la sección "Dynos gratis", haga clic en el ícono de lápiz a la derecha
  4. Haga clic en el control azul de encendido / apagado y luego haga clic en "Confirmar"

Espero que esto ayude.

adlerer
fuente