We can't find the internet
Attempting to reconnect
Something went wrong!
Hang in there while we get back on track
Post 13
Game Site Journal - 04
Published on: 2025-04-12
Tags:
Blog, Side Project, LiveView, Game Site, Fly, Deployment
This is a quick post to show you how to deploy with Fly.io
Follow the Phoenix Deploying on Fly.io guide to deploy the project.
https://hexdocs.pm/phoenix/fly.html
Install Fly.io Command line
https://fly.io/docs/flyctl/install/
fly auth signup
to signup for your account and make your shell know who you are
fly launch
to start the first deployment you should see something like:
? Choose an app name (leave blank to generate one): replace-this-with-your-app-name
? Choose a region for deployment: pick-the-default-or-select-your-region
? Would you like to set up a Postgresql database now? Yes
? Select configuration: Development - Single node, 1x shared CPU, 256MB RAM, 1GB disk
? Scale single node pg to zero after one hour? Yes
? Would you like to set up an Upstash Redis database now? No
? Would you like to deploy now? Yes
Once this is done the current version of your code is deployed. If you want to use a specific branch only and update it when ever that branch gets a pull request follow the next steps.
fly auth token
to get a token for deployment, be sure to head to the setting section of the github page for your repository. Then head to secrets and variables. Then actions. Then add a Repository Secret with the name FLY_API_TOKEN
Then you can create .github/workflows/continuous-deployment.yml file with the following content. Notice this uses the secret token you just configured.
name: Fly Deploy
on:
push:
branches:
- main
env:
FLY_API_TOKEN: ${{ secrets.FLY_API_TOKEN }}
jobs:
deploy:
name: Deploy app
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: superfly/flyctl-actions/setup-flyctl@master
- run: flyctl deploy --remote-only
Where - main is the name of the branch you want to update off of.
It's really that simple. Keep in mind at the time of writing this you can only have 2 sites active for free and you will need some money in your account to move out of the trial phase and keep your sites up.