Video coming soon…

📷 Setup Immich — Self-Hosted Photo & Video Backup

Replace Google Photos with Immich — an open-source, high-performance photo and video backup solution with mobile apps and machine learning features.

⚠️ This script is provided for demo and testing purposes only. Not intended for production use.
⚠️ RAM: Immich's machine learning features require at least 2 GB RAM. On low-memory servers, disable ML in Settings → Machine Learning.

📦 Resources & Setup Scripts

Grab the automated bash script from GitHub to follow along with the video.

Automated install script — one command sets everything up.
View on GitHub

Quick Install:

wget https://raw.githubusercontent.com/mhmdali94/Docker/main/media/immich/immich-ubuntu.sh
chmod +x immich-ubuntu.sh
sudo bash immich-ubuntu.sh

Tutorial Steps

1 Download the Script

wget https://raw.githubusercontent.com/mhmdali94/Docker/main/media/immich/immich-ubuntu.sh

2 Make it Executable

chmod +x immich-ubuntu.sh

3 Run the Installer

The script installs Docker if needed, then sets up the service automatically.

sudo bash immich-ubuntu.sh

4 Access the Web UI

Open your browser and navigate to:

http://<your-server-ip>:2283

5 Install Mobile App

Download the Immich app for iOS or Android — enable automatic photo backup in the app settings to start syncing your library.

Ports Used

PortPurpose
2283Immich Web UI

Overview

Immich is a high-performance, self-hosted photo and video backup solution designed as a full replacement for Google Photos. It provides automatic mobile backup via native iOS and Android apps, a clean web gallery, facial recognition, object detection, and EXIF-based map views — all running on your own infrastructure.

Why Use It

Google Photos scans your personal photos for AI training and ad targeting — your family memories are processed by one of the world's largest advertising platforms. Immich puts the same machine learning (facial recognition, object detection, CLIP semantic search) on your own server: your photos stay on your hardware, behind your firewall, under your control. The mobile app is indistinguishable from Google Photos in daily use: take a photo, it appears in Immich within minutes, automatically backed up.

When You Need It

    Who Should Use It

      Real Use Cases

        Main Features

          How to Use After Installation

            Security Best Practices

              Ports and Firewall Notes

              Immich serves on port 2283 by default. Proxy through Nginx Proxy Manager with HTTPS — the mobile app requires a valid HTTPS certificate for external access. The ML container, PostgreSQL (5432), and Redis are internal Docker services. Open only port 2283 on the host (or only 443 if using Nginx Proxy Manager). Ensure sufficient upload bandwidth — photo backup generates sustained upload traffic from multiple phones.

              Backup and Maintenance

                Common Mistakes

                  Troubleshooting

                    Alternatives

                    PhotoPrism (better RAW workflow, WebDAV, no dedicated mobile backup app), Nextcloud Photos (integrates with Nextcloud but less ML), Piwigo (gallery-focused, no auto-backup), LibrePhotos (Python-based, less polished). Immich is the best self-hosted Google Photos replacement — the mobile app is the decisive advantage over alternatives.

                    When Not to Use It

                    Skip Immich if you are a photographer primarily managing RAW files with a desktop workflow — PhotoPrism's WebDAV and Darktable integration are better suited. Also be cautious if you have less than 2 GB RAM — the ML container uses significant memory; disable machine learning in Settings to run on lower-spec hardware (you lose face recognition and smart search but keep backup functionality). Immich development moves fast — always check the changelog before major updates.

                    PrismaTechWork Professional Help

                    PrismaTechWork provides end-to-end infrastructure services — from initial deployment and security hardening to ongoing monitoring, automated backups, and dedicated support. Whether you need a single-server setup or a multi-site network, our team ensures your infrastructure is built right, secured properly, and maintained reliably.

                      Contact Us

                      Frequently Asked Questions

                      How does Immich mobile backup work?

                      Install the Immich app on iOS or Android and connect it to your server URL with your account credentials. In the app settings, enable Auto Backup and choose which device albums to include (Camera, Screenshots, Downloads, etc.). The app monitors those albums for new photos and videos and uploads them to your Immich server in the background — typically within minutes of taking a photo when connected to Wi-Fi. You can also configure backup over mobile data. Uploaded originals are stored in the upload volume on your server; the app can optionally keep local copies or remove them after successful backup.

                      What is CLIP semantic search?

                      CLIP (Contrastive Language-Image Pre-Training) is an AI model that understands the relationship between images and natural language descriptions. Immich uses CLIP to enable semantic search: type 'red bicycle on a street' and Immich returns photos matching that description — even without any manual tags, captions, or keywords on the photos. This is the same technology behind Google Photos' natural language search. The CLIP model runs in Immich's ML container on your server — no photos are sent to any external AI service.

                      How does face recognition work in Immich?

                      Immich's ML container detects faces in all indexed photos and clusters them by facial similarity. Visit the People section of the web interface to see all detected face clusters. Click on a cluster and assign a name — that person's People album is created and all matching photos appear in it. New photos are automatically assigned to the correct person on future ML runs. The model distinguishes between different people accurately and can detect faces across varying ages in your library.

                      Can I import my existing Google Photos library?

                      Yes. Use Google Takeout to export your Google Photos library as a zip file (takeout.google.com). The export includes original photos with metadata JSON files. Use the Immich CLI tool (docker exec immich-server immich upload --google-photos) to import the Takeout export — it reads the JSON files and preserves original dates, albums, and descriptions. For large libraries, the CLI import is faster than uploading through the web interface. Duplicate detection prevents re-importing photos already in Immich.

                      How do I share photos with family members?

                      Immich offers several sharing options. Per-album sharing: create an album, add photos, and share it with specific users on your Immich server — they see it in their own account. Public links: generate a shareable link for an album or individual photo — anyone with the link can view without an account. Partner sharing: grant a specific user view access to your entire library (and optionally allow them to see your faces) — ideal for partners who want to see each other's full camera roll on one server.

                      Does Immich support video backup?

                      Yes. Immich backs up video files from your phone alongside photos — MP4, MOV, and other formats are supported. Videos are transcoded in the background for web playback with lower bandwidth requirements, while the original file is preserved. Motion photos (Google Pixel) and Live Photos (iPhone) are handled correctly — the photo and video component are stored together and displayed as a live photo in the web interface and mobile app.

                      How much storage does Immich typically use?

                      Storage depends on your phone camera quality. A modern smartphone at 12MP takes JPEG photos of 3–5 MB each and HEIC photos at 2–4 MB. Videos vary from 50 MB (30-second clip) to several GB for long 4K recordings. A family of 4 taking an average of 10 photos per day generates roughly 50 GB per year. Plan for at minimum 500 GB for an active family; 2+ TB for 10+ years of photos. Immich also generates thumbnails (small, using 10–20% of original size) in addition to storing originals.

                      Can I disable machine learning on low-memory servers?

                      Yes. In the Immich docker-compose, you can remove the immich-machine-learning service entirely. In Settings → Machine Learning (admin panel), disable all ML features: facial recognition, CLIP search, and object detection. Without ML, Immich functions as a reliable photo backup and organisation tool with timeline, albums, sharing, and map view — just without smart search and face recognition. This reduces RAM usage significantly, making Immich viable on 1 GB RAM servers for basic backup use.