How to Upgrade a Self-Hosted Docmost Instance
Keeping Docmost up to date helps you receive the latest security fixes, bug fixes, performance improvements, and features. Before upgrading, make sure you have a recent backup of your database, uploaded files, and application configuration. If you haven't created a backup yet, follow the How to Back Up and Restore a Self-Hosted Docmost Deployment guide first.
In this guide, you'll upgrade a self-hosted Docmost instance from v0.80.2 to v0.95.0 using Docker Compose. You'll verify the current deployment, review the release notes, update the Docmost image, complete the upgrade, and verify that your pages, spaces, and uploaded files are preserved. The same workflow can be applied to other supported Docmost upgrades after reviewing the release notes for the target version.
This article was tested on a live server before publication. Every command, configuration file, and verification step was validated on the final deployment to maintain accuracy.
Prerequisites
Before you begin, make sure you have the following:
-
A Running Docmost Deployment: A self-hosted Docmost instance deployed with Docker Compose.
-
A Non-Root User with Sudo Privileges: SSH or terminal access to the server using the non-root user created during deployment.
-
Docker Engine and Docker Compose: Installed on your server to manage the deployment.
-
A Recent Backup: A current backup of your Docmost database, uploaded files, and configuration, created before you begin the upgrade.
Infrastructure Used
This guide was validated using the following infrastructure:
- Cloud Provider: DigitalOcean
- Operating System: Ubuntu 24.04 LTS
- Deployment Environment: Virtual Machine (Droplet)
This guide contains affiliate links. If you sign up through these links, I may earn a commission at no additional cost to you. I only recommend products and services that I personally use while testing my guides.
Step 1: Verify the Current Deployment
-
Verifying your current deployment before making any changes gives you a baseline you can compare against once the upgrade is complete. In this step, you'll confirm that all containers are running and record the current Docmost image version.
-
Run the following commands:
docker compose psdocker compose imagesdocker image inspect docmost/docmost:0.80.2 --format='{{.RepoTags}}'The output should show that the Docmost container is running and using the
0.80.2image, along with the Redis and Traefik containers.
Step 2: Review the Release Notes
-
Reviewing the release notes for the target version helps you identify any breaking changes, new configuration requirements, deprecated features, or manual migration steps that could affect your deployment.
-
For this guide, the Docmost instance is upgraded from
v0.80.2tov0.95.0. Thev0.95.0release notes describe a handful of quality-of-life additions — a workspace-level default edit preference, a/timeslash command in the editor, and translation-aware search for slash-menu suggestions — along with several security fixes, but no breaking changes or manual migration steps. -
Once you've reviewed the release notes for your own upgrade path and confirmed there are no additional requirements, you're ready to update the Docker Compose configuration with the new Docmost image.
Step 3: Update the Docker Compose Configuration
-
With the release notes reviewed, update your Docker Compose configuration to point to the new Docmost image.
-
Open the
docker-compose.ymlfile in your preferred text editor:nano docker-compose.yml -
Locate the
docmostservice and update the image from:image: docmost/docmost:0.80.2to:
image: docmost/docmost:0.95.0Save the file, then verify that the image tag has been updated successfully:
grep "image:" docker-compose.ymlThe output should show that the Docmost service is using the
docmost/docmost:0.95.0image, while the Traefik and Redis images remain unchanged.
Step 4: Pull the Latest Docmost Image
-
After updating the image tag, pull the new Docmost image from Docker Hub before starting the upgrade.
docker compose pull -
Docker Compose downloads the updated image while leaving the existing containers running. This ensures the new image is available locally before the upgrade begins, and avoids downtime caused by image downloads during deployment.
-
After the command completes, verify that the
docmost/docmost:0.95.0image has been downloaded successfully before proceeding to the upgrade.
Step 5: Upgrade the Docmost Instance
-
With the latest image downloaded, recreate the Docmost container using the updated image.
docker compose up -d -
Docker Compose stops the existing Docmost container and creates a new one from the
0.95.0image. The existing Docker volumes are reused, so your uploaded files and persistent data remain intact throughout the upgrade. -
After the deployment completes, verify that all containers are running and confirm that the Docmost service is using the new image:
docker compose psThe output should show the Docmost container running with the
0.95.0image, while the Redis and Traefik containers continue running normally.
Step 6: Verify the Upgrade
-
After the containers have been recreated, review the application logs to confirm that Docmost started successfully and completed any required database migrations.
docker compose logs -f docmostA successful startup should include log messages indicating that:
- The Redis connection was established.
- The database connection was successful.
- Any pending database migrations were applied successfully.
- The Nest application started successfully and is listening for incoming requests.
-
Once you see these messages, press Ctrl+C to stop following the logs. At this point, the upgrade is complete and the application is ready for validation.
Step 7: Validate the Upgraded Instance
-
With the upgrade complete and confirmed through the logs, validate that the application itself is working correctly for end users.
-
Open your Docmost instance in a web browser and check the following:
- Sign in to your Docmost workspace.
- Verify that all spaces are present.
- Open several pages to confirm their content is intact.
- Confirm that uploaded files and attachments are accessible.
- Create a new page and save your changes.
- Upload a new file to verify that file uploads are working correctly.
-
If all of these checks pass, your existing pages, spaces, and uploaded files have been preserved, and the upgraded instance is operating normally.
Troubleshooting
-
The Updated Image Fails to Pull: If the image tag is incorrect or the version hasn't been published yet,
docker compose pullwill return an error similar to the following:Error response from daemon: manifest for docmost/docmost:0.95.0 not found: manifest unknownFix: Confirm the exact version tag on the official Docmost GitHub releases page, correct the tag in
docker-compose.yml, and rundocker compose pullagain. -
The Docmost Container Restarts Repeatedly After the Upgrade: If
docker compose psshows the container cycling through a restart loop instead of reaching anUpstate, the new version may be failing to start.Fix: Review the container logs for the specific error:
docker compose logs docmostCheck the release notes again for any configuration changes you may have missed, and confirm your
.envfile still contains every variable the new version requires. -
A Database Migration Fails During Startup: If the logs show a migration error rather than a successful startup message, the upgrade should be rolled back rather than retried in place.
Fix: Stop the deployment, then revert the image tag in
docker-compose.ymlto the previous version:docker compose downStart the deployment again on the previous version:
docker compose up -dOnce the previous version is confirmed working, restore your database from the backup taken before the upgrade if needed, and investigate the migration failure before attempting the upgrade a second time.
Further Steps
Your Docmost instance is now running the latest version. Depending on your requirements, you may want to test upgrades on a staging environment before applying them to production, and keep an eye on new releases so you don't miss important security fixes.
For the full release history and changelogs, refer to the official Docmost GitHub releases page:
Conclusion
In this guide, you upgraded a self-hosted Docmost instance from v0.80.2 to v0.95.0 using Docker Compose. You verified the existing deployment, reviewed the release notes, updated and pulled the new container image, completed the upgrade, checked the application logs, and confirmed that your pages, spaces, and uploaded files were preserved.
Before upgrading to future releases, review the release notes, create a recent backup, and verify the application after the upgrade. Following these steps helps you identify potential issues early and keep your Docmost deployment up to date.