El alojamiento para Node.js todavía no está muy extendido, especialmente en los países de habla alemana. La empresa estadounidense de nube Heroku ofrece una solución aquí, e incluso de forma gratuita . Siempre notas el paradigma "Construye aplicaciones ... no infraestructura" y todavía tienes pocas restricciones. Como ejemplo, estamos implementando un pequeño trabajo cron basado en PhantomJS , que borra un sitio web todos los días y envía el título de la página por correo electrónico.
Para hacer esto, primero nos registramos gratis en https://signup.heroku.com/:
Después de la confirmación obligatoria por correo electrónico, emitiremos una contraseña segura.:
Para poder usar complementos gratuitos del mercado más adelante, primero debemos verificar nuestra cuenta en https://heroku.com/verify ingresando una tarjeta de crédito (no se preocupe, todo sigue siendo gratis):
El resto ahora tiene lugar exclusivamente en la línea de comandos. Para esto, necesitamos localmente Node.js / npm , Git y Heroku CLI .
Finalmente iniciamos sesión en Heroku localmente (una vez) en la línea de comando:
Primero creamos una nueva aplicación basada en un paquete de compilación adecuado. En nuestro ejemplo, estamos usando el paquete de compilación oficial de Node.js heroku-buildpack-nodejs.git:
1a01abaf4b9308c5714622396ccc4708
Ahora creamos un package.json para instalar los paquetes PhantomJS , CasperJS , SpookyJS y Nodemailer necesarios para nuestro proyecto:
1a01abaf4b9308c5714622396ccc4708
La lógica real se puede encontrar en script.js:
1a01abaf4b9308c5714622396ccc4708
Primero probamos todo localmente:
1a01abaf4b9308c5714622396ccc4708
El script extrae un título de un sitio web y envía un correo electrónico:
Ahora estamos impulsando todo en Heroku, lo que también desencadena el proceso de compilación:
1a01abaf4b9308c5714622396ccc4708
Si desea enviar cambios de código a Heroku más tarde, simplemente presione nuevamente. Por un lado, ahora podemos usar SSH para comprobar si todo se está ejecutando en el servidor.:
1a01abaf4b9308c5714622396ccc4708
Aquí, también, el correo electrónico se envía correctamente. Ahora solo nos queda automatizar el proceso:
1a01abaf4b9308c5714622396ccc4708
Agregamos una nueva llamada de script con "Agregar nuevo trabajo":
Como prueba, seleccionamos cada 10 minutos como frecuencia y guardamos:
El cronjob ahora hará su trabajo automáticamente en el futuro.