NPM_CONFIG_LOGLEVEL=errorNODE_ENV=productionNODE_MODULES_CACHE=trueNODE_VERBOSE=false
Bu atamalara kod içerisinden
process.env.<üsttekilerden biri>
şeklinde erişilebilir.console.log(process.env.NODE_ENV) gibi
Heroku aldığı node.js uygulamasındaki start scriptini çalıştırır. Yani npm run start
komutunu işler
Bu sebeple package.json dosyası olmak zorunda ve start scriptini içermek zorundadır
Artık heroku yükleme işleminin hemen ardından build
scriptini çalıştırmaya başlayacak
Tarihi ve detaylı bilgi için buraya tıklayabilirsin
Örnek package.json dosyası
{ "name": "temp", "version": "1.0.0", "description": "", "main": "index.js", "directories": { "lib": "lib" }, "scripts": { "start": "node index.js", "test": "echo \"Error: no test specified\" && exit 1" }, "author": "", "license": "ISC"}
port = process.env.PORT || 5000
Heroku kendiliğinden port atama işlemi yapmaktadır. Bu sebeple dinlediğimiz portu process.env.PORT yapmak zorundayız.
Npm üzerinden heroku yükleme işlemi
Email ve şifre istenecektir. Siteye kayıt olduğunuz bilgileri girin
heroku git:clone -a [herokudaki uygulama adı] [kopyalanacağı dizin yolu]cd [kopyalanacağı dizin yolu]
herokudaki uygulama adı: mytempsite
kopyalanacağı dizin yolu: C:\Desktop\Temp
Heroku'da bulunan uygulamayı istediğimiz dizinin içine kopyalıyoruz. Sonrasında kopyalama işleminin olduğu dizine giriyoruz.
git add .git commit -am "Mesaj"git push heroku master
Değişkliklikler heroku uygulmamıza eklenecektir.
heroku logs --tail -a [uygulama adı]
uygulama adı: mytempsite (herokudaki uygulama adımız)
Uygulmamız çalışırken yapılan işlemleri raporlar
Babel gibi ek uygulamalar kullanıyorsanız bu kısım sizin için oldukça önemlidir.
Not: Tüm es5 olmayan dosyaları babel ile es5'e çevirip herokuya yüklemek performans açısından daha sağlıklıdır.
heroku config:set NPM_CONFIG_PRODUCTION=false
Üretim modunu kapatır. Bu sayede heroku package.json dosyasındaki dev-dependencies içindekilerini indirir. Ardından tekrar bu mod isteğe bağlı açılabilir
Bu komut ile terminale erişmiş oluruz. Bu sayede npm komutlarımızı çalıştırabiliriz.
Yukarıdaki komut ile gerekli olan uygulamaları (dev-dependencies) kendimiz indirebiliriz.