Ejecutar script de Python en Google Cloud Compute Engine

Sé que esta es una copia exacta de esta pregunta, pero he estado probando diferentes soluciones por un tiempo y no se me ocurrió nada.

Tengo este sencillo script que usa PRAW para encontrar publicaciones en Reddit. Lleva un tiempo, así que lo necesito para seguir vivo cuando me desconecto de la shell también.

Intenté configurarlo como una secuencia de comandos de inicio, para usar nohup con el fin de ejecutarlo en segundo plano, pero nada de esto funcionó. Seguí el inicio rápido y puedo ejecutar la aplicación hello word, pero todos estos ejemplos son para aplicaciones web y todo lo que quiero es iniciar un proceso en mi VM y seguir funcionando cuando no estoy conectado, sin usar la configuración .yaml archivos y tal. ¿Alguien por favor me puede indicar la dirección correcta?

Bueno, al final usando nohup fue la respuesta. Soy nuevo en el entorno GNU y asumí que no funcionó cuando lo intenté por primera vez. Mi progtwig estaba saliendo con un error, pero no nohup.out archivo nohup.out , así que no estaba al tanto …

De todos modos, aquí hay una guía detallada para futuras referencias (utilizando Debian Stretch):

  1. Haz de tu script un ejecutable

     chmod +x myscript.py 
  2. Ejecute el comando nohup para ejecutar el script en segundo plano. La opción & asegura que el proceso se mantenga vivo después de salir. He agregado la línea shebang a mi script de python, por lo que no es necesario llamar a python aquí

     nohup /path/to/script/myscript.py & 
  3. Cerrar sesión desde la shell si quieres

     logout 

¡Hecho! Ahora su script está en funcionamiento. Puedes volver a iniciar sesión y asegurarte de que tu proceso aún está vivo al verificar la salida de este comando:

 ps -e | grep myscript.py