Comment on page
💜
Heroku
NPM_CONFIG_LOGLEVEL=errorNODE_ENV=productionNODE_MODULES_CACHE=trueNODE_VERBOSE=false
Bu atamalara kod içerisindenprocess.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
Ö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.
Last modified 1mo ago