Node.js için barındırma, özellikle Almanca konuşulan ülkelerde hala çok yaygın değil. Amerikan bulut şirketi Heroku burada bir çözüm sunuyor - hatta ücretsiz . Her zaman "Uygulamalar oluşturun ... altyapı değil" paradigmasını fark edersiniz ve yine de neredeyse hiç kısıtlama yoktur. Örnek olarak, her gün bir web sitesini hurdaya ayıran ve sayfa başlığını e-posta ile gönderen PhantomJS'ye dayalı küçük bir cron işi uyguluyoruz .
Bunu yapmak için önce şu adresten ücretsiz kayıt oluyoruz: https://signup.heroku.com/:
Zorunlu e-posta onayından sonra güvenli bir şifre atayacağız:
Marketplace'teki ücretsiz eklentileri daha sonra kullanabilmek için, önce bir kredi kartı girerek https://heroku.com/verify altındaki hesabımızı doğrulamamız gerekiyor (endişelenmeyin, her şey ücretsiz kalır):
Gerisi artık sadece komut satırında gerçekleşiyor. Bunun için yerel olarak Node.js / npm , Git ve Heroku CLI'ye ihtiyacımız var.
Sonunda Heroku'ya yerel olarak (bir kez) komut satırından giriş yapıyoruz:
İlk önce uygun bir yapı paketine dayalı yeni bir uygulama oluşturuyoruz. Örneğimizde resmi Node.js buildpack heroku-buildpack-nodejs.git kullanıyoruz:
1a01abaf4b9308c5714622396ccc4708
Şimdi projemiz için gerekli olan PhantomJS , CasperJS , SpookyJS ve Nodemailer paketlerini kurmak için bir package.json oluşturuyoruz.:
1a01abaf4b9308c5714622396ccc4708
Gerçek mantık, script.js'de bulunabilir.:
1a01abaf4b9308c5714622396ccc4708
Önce her şeyi yerel olarak test ediyoruz:
1a01abaf4b9308c5714622396ccc4708
Komut dosyası, bir web sitesinden bir başlık çıkarır ve bir e-posta gönderir:
Şimdi her şeyi Heroku'da zorluyoruz ve bu da geliştirme sürecini tetikliyor.:
1a01abaf4b9308c5714622396ccc4708
Daha sonra Heroku'ya kod değişikliklerini göndermek isterseniz, tekrar basmanız yeterlidir. Bir yandan, her şeyin sunucuda çalışıp çalışmadığını kontrol etmek için artık SSH kullanabiliriz.:
1a01abaf4b9308c5714622396ccc4708
E-posta burada da doğru bir şekilde gönderilir. Şimdi sadece süreci otomatikleştirmeliyiz:
1a01abaf4b9308c5714622396ccc4708
"Yeni iş ekle" ile yeni bir komut dosyası çağrısı ekliyoruz:
Test olarak her 10 dakikada bir frekans olarak seçip kaydediyoruz:
Cronjob artık işini gelecekte otomatik olarak yapacak.