Install on Dockge
Manage OpenPost as a Dockge stack from the canonical Compose file.
Create a Dockge stack with the supplied deploy/dockge/compose.yaml. Dockge keeps the Compose file and .env on the host, so the same stack also works with the Docker Compose CLI. The image supports x86_64 hosts. Other architectures need amd64 emulation.
What you need
- Dockge connected to a Docker host. Its default stacks directory is
/opt/stacks. - A public HTTPS address before you connect social accounts.
Create the stack
- In Dockge, choose Create Stack and name it
openpost(lowercase letters, numbers, underscores, and hyphens only). - Paste
deploy/dockge/compose.yamlinto the stack editor. - Add a
.envfile to the stack with one line per${...}value:
OPENPOST_APP_URL=https://post.example.com
OPENPOST_PUBLIC_URL=https://post.example.com
OPENPOST_MEDIA_URL=https://post.example.com/media
OPENPOST_JWT_SECRET=paste-openssl-rand-base64-32-output-here
OPENPOST_ENCRYPTION_KEY=paste-a-second-independent-value-here
OPENPOST_DISABLE_REGISTRATIONS=falseGenerate each secret with openssl rand -base64 32. Keep both stable across restarts and restores.
- Deploy the stack. Dockge stores its files under
/opt/stacks/openpost/by default. Keep OpenPost secrets in the stack.env, not a sharedglobal.env. - Verify readiness:
curl https://post.example.com/api/v1/readyExpect "status":"ready" and "database":"ok". If it fails, inspect the stack logs and confirm that all three URL variables use the same public origin.
Open the app and create the first account. It becomes the instance administrator. The stack stores SQLite and media in the openpost_data volume.
Updates and backups
Pin image: to a release tag. To upgrade, change the tag and redeploy, then check /api/v1/ready. Back up openpost_data, compose.yaml, and .env first, and record the current image tag.
Keep backups private and off the server. A rollback may require the backup made for the previous version. Follow the maintenance checklist.
Next steps
- Configure integrations for your social platforms.
- Back up your instance before relying on it for scheduled posts.