Skip to content

dscanlan/willowwoodsberry

Repository files navigation

willow-woodsberry-slime

Small Express app hosted on Fly.io.

Local development

npm install
node server.js

The server binds to 0.0.0.0:8080 (see server.js, fly.toml).

Environment variables go in .env (loaded via dotenv). Resend is used for email, so RESEND_API_KEY must be set in the Fly environment — manage secrets with fly secrets set KEY=value / fly secrets list.

Deploying to Fly.io

One-time setup:

brew install flyctl      # if not installed
fly auth login

To ship changes:

git commit ...           # commit your changes first
fly deploy

fly deploy builds the image from the repo-root Dockerfile using Fly's remote Depot builder, pushes it to registry.fly.io/willowwoodsberry, and performs a rolling update of the machines defined in fly.toml. Deploy progress is also visible at https://fly.io/apps/willowwoodsberry/monitoring.

GitHub Actions deploys

Pushes to main now deploy automatically via .github/workflows/fly-deploy.yml.

Required one-time GitHub setup:

fly tokens create deploy -x 999999h

Add the returned token to the repository's GitHub Actions secrets as FLY_API_TOKEN. After that, every push to main will trigger a Fly deploy.

Useful follow-up commands:

fly status               # machine state
fly logs                 # tail logs
fly releases             # deploy history
fly ssh console          # shell into a machine

Configuration

  • fly.toml — app name, region, VM size, HTTP service config
  • Dockerfilenode:20-alpine, installs prod deps, runs node server.js
  • server.js — Express server (port 8080)

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors