Based on Getting started with NodeJs.
heroku login heroku create heroku apps:rename cool-app heroku config:set variable=value git push heroku master heroku ps:scale web=1 heroku open
To stop an app:
heroku ps:stop DYNO --app <app name>
Step by step
Create git repo (I assume you are already in one).
heroku login - Logs you in from the shell
heroku create - Creates application, for example based on Connect webserver.
Note: this assumes the main file is called index.js
The command will give you a new Git remote url and will add it to the local repo.
OR if the application already exists you can add heroku remote using
heroku git:remote -a <app name>
- Use environment port (if doing web app). Instead of listening to hardcoded port, use
var port = process.env.PORT || 3001;
Create Procfile, add
web: node index.js
Commit node_modules/ folder to Git. I don't like this particular step, but Heroku's npm install step was often failing otherwise. Probably no longer necessary, since NPM is more robust now.
heroku apps:rename cool-app - Renames application to something meaningful.
heroku config:set DB_PASSWORD=value - Sets environment variables for application, for example
heroku config:set STATS_DB_USERNAME=something
Use environment variable from Node
git push heroku master - Pushes master branch to Heroku
heroku ps:scale web=1 - Assigns 1 dyno VM to run your application
Check if the application started using
Open application in browser