https://devcenter.heroku.com/articles/deploying-nodejs
- register & login ke heroku.com
- install heroku-cli (https://devcenter.heroku.com/articles/heroku-cli)
- lakuin di terminal
heroku login
- bikin app di dashboard atau pakai command
heroku create <namaapp>
- dari dashboard app ke resources - tambahin add on heroku postgres atau melalui command terminal
heroku addons:create heroku-postgresql:hobby-dev
- edit file package.json server tambah script
"start": "node app.js"
- edit config.json production
"use_env_variable": "DATABASE_URL"
- edit app.js port ganti jadi
process.env.PORT || 3000
- tidak perlu require dotenv di production
- di dashboard ke settings, tambahin config vars sesuai .env
- tambah remote heroku melalui terminal
heroku git:remote -a <namaapp>
- git add commit push dulu ke repo origin
git push heroku master
jika repo langsung server ataugit subtree push --prefix server heroku master
jika server berada di folder repo- jika dapat error ssl off, edit config.json production tambahin
"dialectOptions": {
"ssl": {
"rejectUnauthorized": false
}
}
- push lagi ke origin dan heroku
- jalanin command
heroku run bash
untuk masuk ke terminal heroku - install sequelize-cli
npm i -g sequelize-cli
- jalanin
sequelize db:migrate
atausequelize db:seed:all
- kalau ada perubahan push lagi
https://firebase.google.com/docs/hosting/quickstart
- install firebase cli
npm install -g firebase-tools
- jalanin
firebase login
untuk connect ke akun - masuk ke console.firebase.google.com, bikin new project
- masuk ke folder client, jalanin
firebase init
- pilih pake tombol spasi firebase hosting
- pilih project existing atau new
- tulis folder yang mau dideploy, kalau udh di dalem folder client
.
. kalau nanti pakai vue, kemungkinan pakai folderdist
- configure as a single-page app -> yes
- File ./index.html already exists. Overwrite? -> no
- jalanin
firebase deploy
untuk deploy, ketika ada perubahan langsungfirebase deploy
juga