Files
homelab-optimized/docs/services/individual/immich-server.md
Gitea Mirror Bot 6b5bdf7b8d
Some checks failed
Documentation / Build Docusaurus (push) Failing after 17m30s
Documentation / Deploy to GitHub Pages (push) Has been skipped
Sanitized mirror from private repository - 2026-04-04 03:48:45 UTC
2026-04-04 03:48:45 +00:00

4.5 KiB

Immich Server

🟡 Media Service

📋 Service Overview

Property Value
Service Name immich-server
Host raspberry-pi-5-vish
Category Media
Difficulty 🟡
Docker Image ghcr.io/immich-app/immich-server:${IMMICH_VERSION:-release}
Compose File raspberry-pi-5-vish/immich/docker-compose.yml
Directory raspberry-pi-5-vish/immich

🎯 Purpose

High performance self-hosted photo and video backup solution.

🚀 Quick Start

Prerequisites

  • Docker and Docker Compose installed
  • Basic understanding of REDACTED_APP_PASSWORD
  • Access to the host system (raspberry-pi-5-vish)

Deployment

# Navigate to service directory
cd raspberry-pi-5-vish/immich

# Start the service
docker-compose up -d

# Check service status
docker-compose ps

# View logs
docker-compose logs -f immich-server

🔧 Configuration

Docker Compose Configuration

container_name: immich_server
depends_on:
- redis
- database
env_file:
- .env
healthcheck:
  interval: 30s
  retries: 5
  test:
  - CMD
  - curl
  - -f
  - http://localhost:2283/api/server-info
  timeout: 5s
image: ghcr.io/immich-app/immich-server:${IMMICH_VERSION:-release}
ports:
- 2283:2283
restart: unless-stopped
volumes:
- ${UPLOAD_LOCATION}:/data
- /etc/localtime:/etc/localtime:ro

Environment Variables

No environment variables configured.

Port Mappings

Host Port Container Port Protocol Purpose
2283 2283 TCP Service port

Volume Mappings

Host Path Container Path Type Purpose
${UPLOAD_LOCATION} /data volume Application data
/etc/localtime /etc/localtime bind Configuration files

🌐 Access Information

Service ports: 2283:2283

🔒 Security Considerations

  • ⚠️ Consider adding security options (no-new-privileges)
  • ⚠️ Consider running as non-root user

📊 Resource Requirements

No resource limits configured

  • Minimum RAM: 512MB
  • Recommended RAM: 1GB+
  • CPU: 1 core minimum
  • Storage: Varies by usage

Resource Monitoring

Monitor resource usage with:

docker stats

🔍 Health Monitoring

Health check configured Test Command: CMD curl -f http://localhost:2283/api/server-info Check Interval: 30s Timeout: 5s Retries: 5

Manual Health Checks

# Check container health
docker inspect --format='{{.State.Health.Status}}' CONTAINER_NAME

# View health check logs
docker inspect --format='{{range .State.Health.Log}}{{.Output}}{{end}}' CONTAINER_NAME

🚨 Troubleshooting

Common Issues

Service won't start

  • Check Docker logs: docker-compose logs service-name
  • Verify port availability: netstat -tulpn | grep PORT
  • Check file permissions on mounted volumes

Can't access web interface

  • Verify service is running: docker-compose ps
  • Check firewall settings
  • Confirm correct port mapping

Performance issues

  • Monitor resource usage: docker stats
  • Check available disk space: df -h
  • Review service logs for errors

Media not showing

  • Check media file permissions
  • Verify volume mounts are correct
  • Scan media library manually

Useful Commands

# Check service status
docker-compose ps

# View real-time logs
docker-compose logs -f immich-server

# Restart service
docker-compose restart immich-server

# Update service
docker-compose pull immich-server
docker-compose up -d immich-server

# Access service shell
docker-compose exec immich-server /bin/bash
# or
docker-compose exec immich-server /bin/sh

📚 Additional Resources

Services REDACTED_APP_PASSWORD immich-server:

  • Plex
  • Jellyfin
  • Radarr
  • Sonarr
  • Bazarr

This documentation is auto-generated from the Docker Compose configuration. For the most up-to-date information, refer to the official documentation and the actual compose file.

Last Updated: 2025-11-17
Configuration Source: raspberry-pi-5-vish/immich/docker-compose.yml