App Store template
Immich icon

Immich

High performance self-hosted photo and video management solution. Store, organize, and share your memories with machine learning-powered features like face recognition and smart search.

Launch in your Sealos workspace.

Immich template preview
Template previewFull screenshot
Template deployments
13 on Sealos
Deployment
Your own instance
Category
Tools

About this template

Overview

Immich is a self-hosted photo and video management platform with mobile backup, albums, sharing, maps, face recognition, and semantic search. This template deploys Immich v3.0.3 with PostgreSQL, Redis, persistent media storage, HTTPS, and optional machine learning.

From the documentation

Immich keeps the application and media library under your control. The web interface and official mobile apps use one HTTPS endpoint, while PostgreSQL stores metadata and Redis coordinates background jobs.

How to deploy Immich

  1. Choose Deploy now to start Immich in your Sealos workspace.
  2. Review enable_machine_learning in the deployment form.
  3. Launch the template, then inspect the application status and resource cards in Canvas.

Resources to plan for

Start with the resources defined by the Immich template. Review CPU, memory, persistent storage, and network allocations for every service in Canvas. Capacity needs depend on your data and workload; monitor usage as they grow.

Template configuration and setup

Access after deployment

Use the application URL or connection details shown in Canvas. Follow the deployment guide for first-time account setup or client configuration, and keep generated credentials available for that step.

Hosting and billing

Sealos monthly plans include compute, memory, storage, and traffic. Size your plan for all deployed services. Software licenses and external AI or API services may have separate terms and charges. Confirm the applicable plan and optional charges in Cost Center.

Compare Sealos resource plans
Read full documentationCollapse documentation

For current cloud charges, refer to Sealos plan pricing. Upstream documentation may reference earlier billing models.

Deploy Immich on Sealos

Immich is a self-hosted photo and video management platform with mobile backup, albums, sharing, maps, face recognition, and semantic search. This template deploys Immich v3.0.3 with PostgreSQL, Redis, persistent media storage, HTTPS, and optional machine learning.

Immich Screenshot

About Immich

Immich keeps the application and media library under your control. The web interface and official mobile apps use one HTTPS endpoint, while PostgreSQL stores metadata and Redis coordinates background jobs.

This template follows the upstream container topology:

  • Immich Server v3.0.3 serves the web UI and API and runs media-processing workers.
  • Immich Machine Learning v3.0.3 is optional and provides smart search, OCR, object detection, and face recognition.
  • PostgreSQL 16.4 stores users, assets, albums, jobs, and vector indexes.
  • Redis 7.2.7 with Sentinel coordinates queues and cache data.
  • Persistent volumes store media at /data, the ML model cache, and database data.

Immich Community Edition uses filesystem-backed media storage. Back up the /data volume together with PostgreSQL.

Why Deploy Immich on Sealos?

  • Deploy the complete application, database, cache, storage, and HTTPS route from one template.
  • Keep uploads, model downloads, and database data across restarts.
  • Enable or omit the machine-learning service through one deployment input.
  • Adjust compute and storage later from the Sealos resource view.

Deployment Guide

  1. Open the Immich template and click Deploy Now.
  2. Choose the enable_machine_learning setting:
    • true enables smart search, OCR, face recognition, and object detection.
    • false deploys the core photo and video library with a smaller resource footprint.
  3. Start the deployment and allow several minutes for PostgreSQL, Redis, Immich Server, and the optional ML service to initialize.
  4. Open the generated Immich HTTPS URL from the Sealos application link.

First Registration and Login

A fresh Immich deployment starts with the administrator registration screen.

  1. Click Get Started.
  2. Enter the administrator email, password, password confirmation, and display name.
  3. Click Sign Up. The first registered account becomes the administrator.
  4. Sign in with the same email and password.
  5. Complete the onboarding settings, then open Photos or Albums to begin using the library.

Immich creates no preset credentials. Store the administrator credentials in a password manager. Additional users can be created from Administration > Users.

Mobile App Setup

Install the official Immich mobile app and enter the generated Sealos HTTPS URL as the server endpoint. Sign in with an Immich account, then configure mobile backup folders from the app.

Resource and Storage Baseline

The template uses the smallest resource tiers that completed a fresh deployment and an upload, thumbnail, download, album, and machine-learning workflow:

ComponentCPU limitMemory limitInitial storage
Immich Server500m2 GiB1 GiB media volume
PostgreSQL500m2 GiB1 GiB data volume
Redis500m512 MiB1 GiB data volume
Redis Sentinel500m512 MiB1 GiB data volume
Machine Learning500m4 GiB1 GiB model cache

The 2 GiB server and PostgreSQL limits cover the first startup, schema migration, and media workflow peaks. The 4 GiB ML limit preserves operating headroom while OCR, face recognition, and visual search models are loaded together. Increase storage before importing a large library, and increase memory for large videos or concurrent ML jobs.

Configuration

  • Use Administration in Immich to manage users, jobs, libraries, storage templates, and server settings.
  • Use the Sealos resource view to resize the Immich, PostgreSQL, Redis, and ML workloads.
  • Keep the media path mounted at /data when changing the workload.
  • Keep the generated database and Redis credentials connected through their Sealos Secrets.
  • The default Ingress accepts uploads up to 32 MiB. Increase nginx.ingress.kubernetes.io/proxy-body-size on the deployed Ingress before uploading larger media files.

Backup and Upgrade

Create coordinated backups of the Immich /data volume and PostgreSQL database. The ML cache and Redis data can be regenerated, while media files and PostgreSQL metadata form the durable library state. Review the Immich backup and restore guide before upgrades.

Troubleshooting

The page is still starting

Wait for the PostgreSQL, Redis, and Immich pods to become ready. A fresh database initialization and the first model downloads can take several minutes.

Smart search or face recognition is unavailable

Confirm that enable_machine_learning was set to true and that the ML pod is ready. The first request downloads models into the persistent cache.

Uploads fail for large files

Increase nginx.ingress.kubernetes.io/proxy-body-size on the deployed Ingress, check free space on the /data volume, and increase the Immich Server resources for large videos or concurrent uploads.

Resources

License

Immich is licensed under the GNU Affero General Public License v3.0. This Sealos template follows the templates repository license.

From launch to everyday operations

Why deploy
on Sealos

A shorter path from an app you want to an app you can run. Sealos brings deployment and ongoing operations into one place.

  1. One-click deployment

    Start with a ready-made template. Review its configuration and launch from the Sealos console.

  2. Managed Kubernetes

    Run on managed infrastructure with built-in workload scheduling and recovery.

  3. Automatic HTTPS

    Give your application a public HTTPS endpoint with certificates managed for you.

  4. Persistent storage

    Keep application data on persistent volumes across container restarts.

  5. Room to grow

    Adjust CPU, memory, and replicas from the console as your workload changes.

One template. Connected resources.

You Get the Whole Stack

Sealos provisions the resources defined by your template and brings them together in your workspace.

  • App Service

    Container workloads with configurable CPU, memory, and replicas.

  • Public HTTPS URL

    An address for your app, with managed TLS certificates.

  • Database

    A database provisioned alongside your app when the template calls for one.

  • Persistent Volume

    Storage for the files and data your application needs to keep.

  • Environment Variables

    Application settings and secrets configured in one place.

  • Logs & Metrics

    Inspect container logs and resource usage from the console.

Resources and their configuration vary by template. Review the deployment form for this app’s exact setup.

Explore more production-ready templates.

More