- copy a
pocketbaseapp to thepbdirectory - run
./scripts/start.shto startpocketbase - import the
pb/pb_schema.jsonto create thecontactsdb - create an admin, turn off the API rules on
contacts
npm i
- in one terminal
./scripts/start.sh- this starts PB - in another terminal
npm run dev- this starts Astro
- cd into
scripts node loadData.js development | production- to load Contactsnode test.js development | production- to confirm db
Both Astro and Pocketbase are deployed to Fly.io
see Dockerfile and fly.toml Note that this app requires 3 secrets that locally are in the .env.development. To deploy to Fly.io you don't want those secrets in the Dockerfile Instead use fly secrets You have to make three of them like this
fly secrets set POCKETBASE_URL=where ever fly secrets set POCKETBASE_SUPERUSER=some email fly secrets set POCKETBASE_PASSWORD=some password Next, you need to have disk space to write the archive zip file
Add 2 volumes : https://fly.io/docs/launch/volume-storage/
fly volumes create downloads -r dfw
Verify - notice the downloads in the NAME column.
fly volumes list ID STATE NAME SIZE REGION ZONE ENCRYPTED ATTACHED VM CREATED AT vol_vpzmddnqn7xg5824 created downloads 1GB dfw edff true d891443c242e18 40 minutes ago vol_v3yeq0qkqzk3gdm4 created downloads 1GB dfw 8f05 true 1857057c63de08 8 minutes ago See the complete instructions here: pocketbase/pocketbase#537 see the Dockerfile and fly.yml in the pb directory Note that Pocketbase needs the volume storage as shown above