pockethost/docs/production.md
2023-10-11 04:59:28 -07:00

1.6 KiB

title category description
Production Deployment development Learn how to deploy your PocketHost project for production. This guide covers building, refreshing Certbot, running tests, as well as updating and maintaining PocketBase's max semver. Dive in and get your applications running smoothly in no time.

Summary

  • sudo crontab -e
  • sudo pm2 stop all
  • sudo ./scripts/dev.sh
  • sudo ./scripts/build.sh
  • sudo ./scripts/prod.sh
  • Finalize readme
  • yarn version --patch
  • sudo ./scripts/pm2.sh
  • sudo crontab -e
  • Create new discussion in PocketHost and PocketBase

Detailed steps

1. Build

git clone git@github.com:benallfree/pockethost.git
cd pockethost
yarn
cp .env-template .env # modify as needed
scripts/build.sh

2. Refresh Certbot

./scripts/certbot-refresh.sh

Then, ensure keys named fullchain.pem and privkey.key are in docker/mount/nginx/ssl.

3. Run

sudo scripts/pm2.sh
sudo pm2 dash
sudo open https://pockethost.io

4. Test

If all goes well:

  • Update ./gitbook/releases with latest relevant fixes.
  • Create a new discussion on PocketHost forum
  • If major release, create announcement on PocketBase forum
  • Use yarn version --patch for patch release and tag with git
  • Use scripts/build.sh to rebuild everything
  • Use scripts/pm2.sh to run in prod mode

Updating the max PocketBase semver

By default, PocketHost will download and run the latest version of PocketBase. If you need to limit or lock the PocketBase versions(s) available, edit the DAEMON_PB_SEMVER variable in .env.