Thanks to rhiever for his open source software to greatly aid in the development of this software © Randal S. Olson
Development is done with a Docker environment
- Download Docker.
- Sign up as a Here Developer and create a project to generate a Rest API key.
- Sign up as a LocationIQ Developer and generate a Geocoding API Key.
- Create .dev.env file in the root directory, referencing example.env (populate the newly acquired API keys).
- Within the root directory, issue the Docker environment build command:
docker-compose build - Run the Docker containers:
docker-compose up - To stop the services:
ctl + c - Alternatively, stopping and starting services can be done through the Docker Desktop application.
Release to production can be done one of two ways: Through the Heroku CLI or their webiste.
- Install Heroku CLI (learn more)
- Login to Heroku:
heroku login - Create Heroku Application:
heroku create <app-name> - Add Redis-To-Go addon to application:
heroku addons:create redistogo:nano - Add config vars (same that are in .env) on Heroku's Website. This can be found under your application's settings. Alternatively, you can add them on the command line as well.
- Release to Heroku
- Create a git repo (if not done already):
git init - Point repo to application:
heroku git:remote -a <app-name> - Stage changes for release:
git add . - release to heroku:
git push heroku master
- Create a git repo (if not done already):
- Register with Heroku and create a new app.
- Under Resources / Addons, find Redis To Go and add that to your app.
- Under Settings / Config vars, enter your production config variables (same as those found in .dev.env, but with values replaced for production).
- Under Deploy tab / Deployment method, select Github.
- Search for your app's repository and click connect. You can now choose to enable automatic deployments or deploy manually based off your branch of choice.