Putting Node Express app on Heroku
In the last tutorial, we created an simple Hello WorldNode Express app which we will not deploy to Heroku for hosting on the public internet.
Step 1:
Login to your Heroku hosting account and click create new app…
Step 2:
Since we have not purchased a domain name for our app, we will create a sub-domain name on Heroku’s domain. Come up with an unique sub-domain name for the app and enter it as shown below. Or leave blank, and Heroku will make one up for you.
Step 3:
After clicking the Create App button (shown above), you get to the deploy instructions page that looks like this…
Step 4:
Downloading and install the Heroku CLI (formerly known as Heroku toolbelt) as mentioned. Then you should be able to type “heroku login” in your terminal inside your project folder. You may need to restart terminal after installing the CLI. CLI stands for command line interface.
It will ask for your Heroku login email and password.
Step 5:
Use or generate a SSH key on your machine and paste the “public key” into your Heroku account as described here.
Step 6:
You get files up to Heroku using Git Install it if you don’t already have.
Step 7:
In terminal, navigate to project folder. Ours is “c:/temp/hello” from last tutorial and type “git init” to initialize a new Git repository for this project.
Step 8:
Since Heroku will recreate the node_modules folder based on your package.json file, we do not need to push the “node_modules” folder up to Heroku. Therefore, create a .gitignore file in the project root with the following line…
Also add a start script to your package.json, so that Heroku knows how to start up your app…
Another change we need to make on our app is …
The process.env.PORT is actually important here. This is the environment variable on Heroku that contains the port number. When on the Heroku cloud, the app will listen on this port. But on local machine, it will listen on port 3000.
Step 9:
Now when you run git status, you see only these files (without the node_modules)…
Step 10:
Add the files to stage with the command …
git add .
Step 11:
Run git commit …
Step 12:
To set up a Git remote to Heroku, run the command …
heroku git:remote -a your-app-name And you should see the heroku remote when running ...
git remove -v
Step 13:
Now you can push to heroku with …
git push heroku master
Step 14:
Type “heroku open” and it will open a new browser to your app.
If you need to restart your app, you can do in Heroku dashboard …
Also if you need to shut down your app or delete your app…