Backend Setup
Heroku Hosting (Adonis Project)
Now that we have our basic app set up, we can go ahead to initialize git and create our heroku app, if you don’t already have heroku setup on your computer or you are completely new to heroku, follow this article (https://devcenter.heroku.com/articles/heroku-cli) to create an account and setup your computer.
Now when you login to your heroku dashboard, you should see your newly created app there like mine
lets make a quick list of things we need to do to configure our heroku app to work properly:
Create a Procfile
Setup postgres database
Configure our app to use the postgres database
1. Create a Procfile
All Heroku applications run in a collection of lightweight Linux containers called dynos. Creating a ‘ Procfile’ at the root of our app directory would enable us to specify the commands that are exceuted by the app’s dynos. You can read up on dynos here https://devcenter.heroku.com/articles/dynos. Also for more information on Procfile read this article https://devcenter.heroku.com/articles/procfile.
Next create a procfile at the root of the app’s directory, and enter the following:
Here, we are telling heroku to run a command for the ‘release’ process type and the ‘web’ process type.
A Procfile declares its process types on individual lines, each with the following format:
<process type>
is an alphanumeric name for your command, such asweb
,worker
,urgentworker
,clock
, and so on.<command>
indicates the command that every dyno of the process type should execute on startup, such asrake jobs:work
.
The release
process type is used to specify the command to run during your app’s release phase, in this case we are telling heroku to run our migrations with the ‘-force’ flag to force it since our app is in a production environment.
The web
process type is used to start up our adonis js app. we are using the command npm start since our
app is essentially a node js app.
lastly we are setting ENV_SILENT=true
in order to suppress any environment errors.
2. Setup mysql database by adding the JawsDB MySQL addon
Navigate to the resources tab in the heroku dashboard, search for “JawsDB MySQL” under addons and select “JawsDB MySQL”.
Select the plan you want, we would use the free hobby dev plan here and click provision.
We should now have a new entry in our environment variables. Navigate to the settings tab and click “Reveal config” vars button to display the environment variables.
3.Final Step
Last updated