-
change remote and push to the new repo
-
change flytoml to point to the new app gogo-cli-example
-
create the app on fly
flyctl apps create gogo-cli-example
-
create db, set 4gb ram
fly postgres create -n gogo-cli-exampledb
-
attach db to the app
flyctl postgres attach -a gogo-cli-example gogo-cli-exampledb
-
Set secrets:
flyctl secrets set SESSION_SALT=<random string> flyctl secrets set SITE_ROOT=https://gogo-cli-example.com flyctl secrets set MJ_APIKEY_PUBLIC=<public key from mailjet> flyctl secrets set MJ_APIKEY_PRIVATE=<private key from mailjet>
-
Do first deploy
fly deploy
, make sure you can reach the app via .fly.dev -
Create a cert for your custom domain
fly certs add gogo-cli-example.com
-
After it screams at you, add required A and AAAA records
-
You might need to run
fly certs check gogo-cli-example.com
a couple of times,fly certs list
should show your domain with the statusready
. -
You should be able to reach your app via custom domain at this point
-
Got to mailjet and add new domain
-
Add sender email address there
-
Add required txt record to validate domain
-
Add required txt records to add DKIM and SPF settings
-
Add postgres db env var to
cmd/web/.env
via./env.pl > cmd/web/.env
, removesslMode=disable
and replace domain name with localhost -
Run the following from the project root to get the database schema in place and generate orm files
./sqlmigrate.sh
./generate.sh
cd cmd/web
yarn
yarn watch # in one tab
make watchexec # in another tab
The project has been generated by gogo-cli and uses gogo library