Deploy and Host Joplin Server on Sealos
Joplin Server is the open-source synchronization backend for Joplin notes, users, sharing, and publishing. This template deploys Joplin Server 3.7.1 with PostgreSQL and HTTPS ingress on Sealos Cloud.

About Hosting Joplin Server
Joplin Server stores note metadata, note contents, attachments, users, sessions, shares, and publishing state for Joplin desktop and mobile clients. It provides the admin web UI and sync API on the same HTTP service.
This Sealos template provisions a PostgreSQL cluster, a database initialization job that creates the joplin database, the Joplin Server container, HTTPS ingress, and an App launcher entry. The template follows the official server profile from the Joplin Docker Compose example and uses an external PostgreSQL database.
Common Use Cases
- Personal Note Sync: Sync notes and resources across Joplin desktop and mobile clients.
- Team Note Hosting: Create users and manage team note synchronization from one server.
- Self-Hosted Publishing: Host shared notes and published content from your own workspace.
- Private Knowledge Base: Keep note data inside a controlled Sealos environment.
Dependencies for Joplin Server Hosting
The Sealos template includes all required runtime dependencies: Joplin Server, PostgreSQL, a database init job, Service, Ingress, and App launcher entry.
Deployment Dependencies
Implementation Details
Architecture Components
- Joplin Server: Runs the web UI and sync API on port
22300
- PostgreSQL: Stores users, notes, item metadata, sessions, and sync state
- Database Init Job: Creates the
joplin database before the app starts
- Ingress: Exposes the server over HTTPS with
APP_BASE_URL aligned to the Sealos URL
Resource Allocation
| Component | CPU Request | CPU Limit | Memory Request | Memory Limit |
|---|
| Joplin Server | 20m | 200m | 25Mi | 256Mi |
| PostgreSQL | 50m | 500m | 51Mi | 512Mi |
Configuration
Joplin Server is configured with DB_CLIENT=pg, the Sealos public APP_BASE_URL, and PostgreSQL credentials from KubeBlocks-managed secrets. The container health probes use TCP checks because Joplin enforces origin checks on HTTP requests.
License Information
Joplin is licensed under the AGPL-3.0 License. This template follows the licensing policy of the Sealos templates repository.
Why Deploy Joplin Server on Sealos?
Sealos is an AI-assisted Cloud Operating System built on Kubernetes that simplifies deployment and operations. By deploying Joplin Server on Sealos, you get:
- One-Click Deployment: Launch Joplin Server with PostgreSQL and HTTPS from one template page.
- Managed PostgreSQL: Store note sync data in a managed KubeBlocks PostgreSQL cluster.
- Public Sync URL: Use the generated HTTPS URL as the Joplin sync target.
- Simple Operations: Adjust resources and inspect logs from the Sealos Canvas.
Deployment Guide
- Open the Joplin template and click Deploy Now.
- Review the generated parameters in the popup dialog and deploy.
- Wait for PostgreSQL, the init job, and Joplin Server to become ready.
- Open the generated URL and sign in with the default admin account:
- Email:
admin@localhost
- Password:
admin
- Open the profile menu and change the admin password. Then create a sync user for regular Joplin clients.
Configuration
Use the Joplin admin UI to create users and manage accounts. Use Sealos Canvas to adjust CPU, memory, hostname, or database storage.
In a Joplin client, set the sync target to Joplin Server and use the generated Sealos HTTPS URL.
Scaling
This template is designed for a single Joplin Server instance. Start by increasing CPU and memory on the Deployment when sync traffic grows. Increase PostgreSQL storage as note data and attachments grow.
Troubleshooting
Issue: Login uses default credentials
- Cause: Joplin Server creates
admin@localhost / admin on first launch.
- Solution: Sign in once and immediately change the admin password.
Issue: Sync client cannot connect
- Cause: The client sync URL or user credentials are incorrect.
- Solution: Set the sync URL to the generated Sealos HTTPS URL and use a created Joplin user account.
Additional Resources
License
This Sealos template follows the licensing policy of the templates repository. Joplin itself is licensed under AGPL-3.0.