Install on CasaOS
Import OpenPost as a CasaOS customized app from a ready-to-use Compose file.
Import OpenPost as a CasaOS customized app with the supplied Compose file. The image supports x86_64 devices. Other architectures need amd64 emulation.
What you need
- A CasaOS device with the App Store available.
- Its local IP address. The Compose file uses
10.0.0.1as an example. - A public HTTPS address before you connect social accounts.
Generate two secrets and keep them private:
openssl rand -base64 32
openssl rand -base64 32Import the app
- Download
deploy/casaos/docker-compose.yml. - Replace
10.0.0.1with your CasaOS device's IP address inOPENPOST_APP_URL,OPENPOST_PUBLIC_URL, andOPENPOST_MEDIA_URL. - Replace the two
REPLACE-WITH-GENERATED-...values with the secrets you generated. - In CasaOS, open the App Store, choose "+" → Install a customized app → Import, and paste the edited file.
- Check the image, port
8080, andopenpost_datavolume, then install the app. - Open
http://<your-device-ip>:8080and create the first account. It becomes the instance administrator.
CasaOS stores the environment values in the imported definition instead of a separate .env file. Protect your edited copy because it contains both secrets.
Before connecting providers
Replace the three local URLs with your public HTTPS addresses, then import the updated definition. Keep the openpost_data volume. Confirm readiness through the public address before connecting providers:
curl https://post.example.com/api/v1/readyUpdate and back up
Use a versioned image tag from GitHub Releases. Before changing it, stop OpenPost and back up the openpost_data volume with the edited Compose file. Import the updated definition, then check /api/v1/ready.
Keep backups private and off the device. A rollback may require the backup made for the previous version because database migrations are not always backward compatible. See Maintenance for the restore checklist.
Next steps
- Configure integrations for your social platforms.
- Back up your instance before relying on it for scheduled posts.