Back to templates
AppFlowy icon

Deploy AppFlowy on Sealos

Open-source collaborative workspace with docs, databases, boards, real-time sync, and self-hosted AppFlowy Cloud services.

Tools
Deploy AppFlowy in a few clicks from the Sealos App Store.Run a self-hosted open-source service on Kubernetes-backed infrastructure.Get automatic HTTPS, routing, and resource management from Sealos.Avoid manual YAML while keeping control of the deployed workload.

Why deploy on Sealos

Sealos makes deploying any app effortless, secure, and production-ready. From one-click launch to ongoing operations, we handle the heavy lifting so you can focus on what matters.

One-Click Deploy
Sealos logo
Compute
Networking
Storage
Security
Observability
Your Application is Live

One-Click Deployment

Deploy any app template in seconds. No compose setup, manual configure, and go live.

Managed Kubernetes Reliability

Built on Sealos Managed Kubernetes for high availability, auto-scaling, and self-healing by default.

Automatic HTTPS & Security

Every deployment includes a secure domain with automatic SSL. We handle certificates and text protection for you.

Persistent Storage

Attach persistent volumes with ease. Your data stays safe, durable, and always accessible.

Scale when needed

Adjust resources as your app grows, no downtime required.

You Get the Whole Stack

Sealos provisions and connects every resource your application needs. Everything is ready to use.

One-click, fully provisionedSecure by defaultProduction ready

App Service

Your application is running and ready to serve requests.

Public HTTPS URL

Secure, global endpoint to access your application.

Database

Managed database instance for your application.

Persistent Volume

Durable storage for uploads and application data.

Environment Variables

Configuration and secrets injected securely into your app.

Logs & Metrics

Centralized logs and basic metrics are enabled.

README

README.md

Deploy and Host AppFlowy on Sealos

AppFlowy is an open-source collaborative workspace for documents, databases, boards, and real-time team collaboration. This Sealos template deploys the AppFlowy Web client, AppFlowy Cloud API, background worker, GoTrue authentication, PostgreSQL, Redis, and S3-compatible object storage as a self-hosted workspace stack.

About Hosting AppFlowy

AppFlowy provides a Notion-style workspace with pages, rich text editing, team workspaces, and structured knowledge management. The hosted Web client connects to AppFlowy Cloud for workspace data, authentication, collaboration APIs, WebSocket sync, and background import/export jobs.

This template uses managed Sealos components where possible. PostgreSQL is provisioned through KubeBlocks with pgvector enabled, Redis is provisioned through KubeBlocks for cache and background job coordination, and file storage uses Sealos Object Storage by default. If you already have an S3-compatible bucket, you can switch the storage backend to external S3 during deployment.

The template intentionally keeps the runtime minimal: it includes the required Web, Cloud, Worker, GoTrue, PostgreSQL, Redis, and object storage services, and does not deploy optional AI, search, admin frontend, or MinIO containers.

Common Use Cases

  • Team knowledge base: Create shared documents, project notes, and internal manuals.
  • Personal productivity workspace: Run a private workspace for notes, tasks, and planning.
  • Self-hosted collaboration: Keep workspace data in your own Sealos environment.
  • Database-backed project tracking: Organize tasks, content, and structured records in AppFlowy databases.
  • Lightweight workspace alternative: Deploy an open-source alternative to hosted workspace products.

Dependencies for AppFlowy Hosting

The Sealos template includes all required runtime dependencies:

  • AppFlowy Web client
  • AppFlowy Cloud API and WebSocket service
  • AppFlowy Worker for background jobs
  • GoTrue authentication service
  • KubeBlocks PostgreSQL with pgvector enabled
  • KubeBlocks Redis
  • Sealos Object Storage by default, or an external S3-compatible bucket

Deployment Dependencies

Implementation Details

Architecture Components

This template deploys the following services:

  • AppFlowy Web: Browser UI exposed at the main application URL.
  • AppFlowy Cloud: API and WebSocket backend for workspaces, documents, collaboration, and file metadata.
  • AppFlowy Worker: Background service for asynchronous jobs such as imports and file-related tasks.
  • GoTrue: Email/password authentication service used by AppFlowy.
  • PostgreSQL: External database selected by default instead of SQLite, provisioned with KubeBlocks and pgvector support.
  • Redis: External Redis selected by default for cache and background coordination.
  • Object Storage: S3-compatible storage. The default option creates a Sealos Object Storage bucket; an external S3 bucket can be selected conditionally.

Configuration

The AppFlowy Web client receives three public URLs at startup:

  • APPFLOWY_BASE_URL: the main application URL
  • APPFLOWY_GOTRUE_BASE_URL: the separate public GoTrue authentication URL
  • APPFLOWY_WS_BASE_URL: the WebSocket URL under the main application host

The Cloud and Worker services use internal Kubernetes service discovery for PostgreSQL, Redis, and GoTrue. The Redis endpoint is wired to the KubeBlocks Redis data service generated by this template.

Resource Profile

The template was live-tested and tuned to the following minimal resource profile:

ComponentCPU limitMemory limitStorage
AppFlowy Web100m128Mi-
GoTrue100m128Mi-
AppFlowy Cloud200m256Mi-
AppFlowy Worker100m128Mi-
PostgreSQL500m512Mi1Gi
Redis data node500m512Mi1Gi
Redis Sentinel500m512Mi1Gi

For larger teams, increase AppFlowy Cloud memory first, then scale PostgreSQL and Redis according to workspace size and traffic.

License Information

AppFlowy and AppFlowy Cloud are licensed under the GNU Affero General Public License v3.0. This Sealos template only packages the deployment configuration.

Why Deploy AppFlowy on Sealos?

Sealos is an AI-assisted Cloud Operating System built on Kubernetes that unifies the entire application lifecycle, from development in cloud IDEs to production deployment and management. By deploying AppFlowy on Sealos, you get:

  • One-click deployment: Deploy the full multi-service AppFlowy stack from the App Store.
  • Managed dependencies: PostgreSQL, Redis, public ingress, TLS, and object storage are provisioned together.
  • Persistent storage: Database and object storage data survive application restarts.
  • Public HTTPS access: Sealos provides public URLs and TLS certificates automatically.
  • Simple customization: Configure storage backend, credentials, and resources through the deployment form and Canvas.
  • Kubernetes-native operations: Adjust resources, inspect logs, and manage services without writing Kubernetes manifests manually.

Deployment Guide

  1. Open the AppFlowy template and click Deploy Now.
  2. Configure the required parameters:
    • S3 provider: keep sealos-objectstorage for the built-in Sealos Object Storage bucket, or choose external-s3 if you already have an S3-compatible bucket.
    • GoTrue admin email: the bootstrap admin email.
    • GoTrue admin password: the bootstrap admin password. Save this value because it is not generated for you.
    • External S3 fields: only required when external-s3 is selected.
  3. Click Deploy and wait for the template to finish creating the App, PostgreSQL, Redis, object storage, and public routes.
  4. Open the AppFlowy application URL from the Sealos Canvas or App Store deployment result.
  5. Sign in or create a user account from the AppFlowy login page.

Login and Registration

AppFlowy opens at the main application URL and redirects to /app. On the login page, enter an email address and continue with password authentication.

New users can click Create account on the login page and register with an email and password. This template enables GoTrue email auto-confirmation, so no external SMTP setup is required for the first login. After registration, AppFlowy creates a default workspace and opens the main workspace UI.

The values configured as gotrue_admin_email and gotrue_admin_password bootstrap the GoTrue service admin account. Do not use this admin account as the normal AppFlowy Web workspace account; create a new user from the Web login page so AppFlowy Cloud can initialize the corresponding user profile and default workspace.

Configuration

ParameterDefaultRequiredDescription
appflowy_s3_providersealos-objectstorageYesSelects Sealos Object Storage or an external S3-compatible bucket.
gotrue_admin_email[email protected]YesBootstrap admin email for GoTrue service administration. Use Web registration for AppFlowy workspace users.
gotrue_admin_passwordemptyYesBootstrap admin password for GoTrue service administration. Set and save this during deployment.
external_s3_endpointemptyConditionalS3 API endpoint when external-s3 is selected.
external_s3_public_endpointemptyConditionalPublic S3 endpoint used for presigned URLs.
external_s3_access_keyemptyConditionalExternal S3 access key.
external_s3_secret_keyemptyConditionalExternal S3 secret key.
external_s3_bucketemptyConditionalExisting external S3 bucket name.
external_s3_regionus-east-1ConditionalExternal S3 region.

Scaling

To scale AppFlowy after deployment:

  1. Open the Canvas for your AppFlowy deployment.
  2. Click the AppFlowy Cloud, Web, Worker, PostgreSQL, or Redis resource card.
  3. Increase CPU, memory, storage, or replicas according to workload needs.
  4. Apply the changes and wait for the affected pods to restart.

For most installations, increase AppFlowy Cloud and PostgreSQL resources before increasing the Web client resources.

Troubleshooting

Cannot sign up or log in

  • Create a normal AppFlowy user from the Web login page instead of signing in with the GoTrue admin account. The admin account can authenticate with GoTrue but may not have an AppFlowy workspace profile.
  • Confirm that gotrue_admin_password was set during deployment if you are checking GoTrue administration.
  • Open the GoTrue public URL and check /health from the browser if needed.
  • Make sure users are registering through the AppFlowy Web login page, not the internal service URL.

AppFlowy loads but workspace actions fail

  • Check the AppFlowy Cloud service health at /api/health on the main application URL.
  • Inspect AppFlowy Cloud logs from the Sealos Canvas.
  • Verify that the PostgreSQL and Redis resource cards are running.

File uploads or imports fail

  • If using the default storage option, verify that the Sealos Object Storage bucket was created.
  • If using external S3, confirm the endpoint, public endpoint, bucket name, access key, secret key, and region.
  • The template sets APPFLOWY_S3_CREATE_BUCKET=false, so external buckets must already exist.

Additional Resources

License

This Sealos template is provided under the same repository license as the templates project. AppFlowy and AppFlowy Cloud are licensed under the GNU Affero General Public License v3.0.

Related templates

Explore more production-ready templates.

More

Ready to Stop Configuring and
Start Creating?

Get started for free. No credit card required.

Play