diff --git a/docker-compose.yml b/docker-compose.yml index c71a29c..a0953ae 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -51,6 +51,8 @@ services: image: fallenbagel/jellyseerr:latest container_name: jellyseerr environment: + - PUID=1000 + - PGID=1000 - LOG_LEVEL=debug - TZ=${TZ} volumes: @@ -62,22 +64,23 @@ services: arr_network: ipv4_address: 172.20.0.14 restart: unless-stopped - - lidarr: - image: ghcr.io/linuxserver-labs/prarr:lidarr-plugins - container_name: lidarr + + lidarr-plugins: + image: ghcr.io/hotio/lidarr:pr-plugins + container_name: lidarr-plugins environment: - - PUID=1000 - - PGID=1000 - - TZ=${TZ} + - PUID:1000 + - PGID:1000 + - TZ:${TZ} volumes: - - /docker-local/Arrs/Lidarr/config:/config - - /data:/data + - /docker-local/Arrs/Lidarr-Plugins/config:/config + - /data/torrents:/data/torrents + - /data/music:/data/music ports: - - 8686:8686 + - 8687:8686 networks: - arr_network: - ipv4_address: 172.20.0.7 + arr_network: + ipv4_address: 172.20.0.17 restart: unless-stopped prowlarr: @@ -106,7 +109,7 @@ services: - WEBUI_PORT=8080 volumes: - ./services/qBittorrent/config:/config - - /data/torrents:/data/downloads + - /data/torrents:/data/torrents ports: - 7070:8080 - 56881:6881 @@ -220,73 +223,12 @@ services: volumes: - /docker-local/slskd:/app - /data:/data - - /data/torrents/complete/lidarr:/downloads + - /data/torrents/complete/SLSKD:/data/downloads - /data/torrents/incomplete:/incomplete networks: arr_network: ipv4_address: 172.20.0.10 restart: unless-stopped - - soulsync: - image: boulderbadgedad/soulsync:latest - container_name: soulsync-webui - environment: - # User/Group ID configuration - - PUID=1000 - - PGID=1000 - - UMASK=022 - # Web server configuration - - FLASK_ENV=production - - PYTHONPATH=/app - # Optional: Configure through environment variables - - ./services/soulsync/config/config.json=/app/config/config.json - # Set timezone - - TZ=${TZ} - ports: - - "8887:8008" # Main web app - - "8888:8888" # Spotify OAuth callback - - "8889:8889" # Tidal OAuth callback - volumes: - # Persistent data volumes - # - ./config:/app/config - - ./services/soulsync/logs:/app/logs - - /data/torrents/complete/soulsync:/app/downloads - # Use named volume for database persistence (separate from host database) - - soulsync:/app/database - # IMPORTANT: Mount the drives containing your download and transfer folders - # If your download/transfer paths are on E: drive, mount E: drive: - # - /mnt/e:/host/mnt/e:rw - # Mount H: drive for transfer folder - # - /mnt/h:/host/mnt/h:rw - # If your download/transfer paths are on C: drive, uncomment this line: - # - /mnt/c:/host/mnt/c:rw - # If your download/transfer paths are on D: drive, uncomment this line: - # - /mnt/d:/host/mnt/d:rw - # Add additional drive mounts as needed for your specific setup - # Optional: Mount your music library for Plex/Jellyfin access - - /data/music:/music:ro - extra_hosts: - # Allow container to reach host services - - "host.docker.internal:host-gateway" - networks: - arr_network: - ipv4_address: 172.20.0.11 - restart: unless-stopped - healthcheck: - test: ["CMD", "curl", "-f", "http://localhost:8888/"] - interval: 30s - timeout: 10s - retries: 3 - start_period: 60s - # Resource limits (adjust as needed) - deploy: - resources: - limits: - cpus: '2.0' - memory: 2G - reservations: - cpus: '0.5' - memory: 512M # Document Management broker: @@ -323,6 +265,54 @@ services: - "--chromium-disable-javascript=true" - "--chromium-allow-list=file:///tmp/.*" restart: unless-stopped + + immich-server: + container_name: immich_server + image: ghcr.io/immich-app/immich-server:${IMMICH_VERSION:-release} + volumes: + - ${UPLOAD_LOCATION}:/data + - /etc/localtime:/etc/localtime:ro + env_file: + - .env + ports: + - '2283:2283' + depends_on: + - redis + - database + restart: always + healthcheck: + disable: false + + immich-machine-learning: + container_name: immich_machine_learning + image: ghcr.io/immich-app/immich-machine-learning:${IMMICH_VERSION:-release} + volumes: + - model-cache:/cache + env_file: + - .env + restart: always + healthcheck: + disable: false + + redis: + container_name: immich_redis + image: docker.io/valkey/valkey:8-bookworm@sha256:fea8b3e67b15729d4bb70589eb03367bab9ad1ee89c876f54327fc7c6e618571 + healthcheck: + test: redis-cli ping || exit 1 + restart: always + + database: + container_name: immich_postgres + image: ghcr.io/immich-app/postgres:14-vectorchord0.4.3-pgvectors0.2.0@sha256:bcf63357191b76a916ae5eb93464d65c07511da41e3bf7a8416db519b40b1c23 + environment: + POSTGRES_PASSWORD: ${DB_PASSWORD} + POSTGRES_USER: ${DB_USERNAME} + POSTGRES_DB: ${DB_DATABASE_NAME} + POSTGRES_INITDB_ARGS: '--data-checksums' + volumes: + - ${DB_DATA_LOCATION}:/var/lib/postgresql/data + shm_size: 128mb + restart: always onlyoffice: image: onlyoffice/documentserver:latest @@ -902,3 +892,4 @@ volumes: onlyoffice: soulsync: driver: local + model-cache: \ No newline at end of file