claude-home/tdarr/ubuntu-manticore-setup.md
Cal Corum 66d2a4bda7 CLAUDE: Add Tdarr ubuntu-manticore setup guide
- Document Tdarr node setup on ubuntu-manticore
- Include GPU configuration and container setup

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-07 00:48:29 -06:00

4.4 KiB

Tdarr Setup on ubuntu-manticore

Overview

Tdarr server and GPU-accelerated node deployed on ubuntu-manticore (10.10.0.226) with NVIDIA GTX 1070 for hardware transcoding. Migrated from old server at 10.10.0.43.

Date: 2025-12-04

Architecture

ubuntu-manticore (10.10.0.226)
├── tdarr-server (container)
│   ├── Web UI: http://10.10.0.226:8265
│   ├── Node Port: 8266
│   └── Data: ~/docker/tdarr/server-data/
├── tdarr-node (container)
│   ├── Node Name: manticore-gpu
│   ├── GPU: GTX 1070 (NVENC/NVDEC)
│   └── Cache: /mnt/NV2/tdarr-cache (NVMe)
└── Media: /mnt/truenas/media (CIFS mount)

Docker Compose Configuration

Location: ~/docker/tdarr/docker-compose.yml

version: "3.8"
services:
  tdarr:
    image: ghcr.io/haveagitgat/tdarr:latest
    container_name: tdarr-server
    restart: unless-stopped
    ports:
      - "8265:8265"  # Web UI
      - "8266:8266"  # Server port (for nodes)
    environment:
      - PUID=1000
      - PGID=1000
      - TZ=America/Chicago
      - serverIP=0.0.0.0
      - serverPort=8266
      - webUIPort=8265
    volumes:
      - ./server-data:/app/server
      - ./configs:/app/configs
      - ./logs:/app/logs
      - /mnt/truenas/media:/media

  tdarr-node:
    image: ghcr.io/haveagitgat/tdarr_node:latest
    container_name: tdarr-node
    restart: unless-stopped
    environment:
      - PUID=1000
      - PGID=1000
      - TZ=America/Chicago
      - serverIP=tdarr
      - serverPort=8266
      - nodeName=manticore-gpu
    volumes:
      - ./node-data:/app/configs
      - /mnt/truenas/media:/media
      - /mnt/NV2/tdarr-cache:/temp
    deploy:
      resources:
        reservations:
          devices:
            - driver: nvidia
              count: all
              capabilities: [gpu]
    depends_on:
      - tdarr

GPU Configuration

Hardware

  • GPU: NVIDIA GeForce GTX 1070 (Pascal architecture)
  • Driver: 570.195.03
  • CUDA: 12.8

NVENC Capabilities

Encoder Supported Working
h264_nvenc Yes Yes
hevc_nvenc Yes Yes
av1_nvenc Yes No (requires Turing+)

Important Limitation: B-Frames

GTX 1070 does NOT support B-frames for HEVC encoding (Pascal limitation).

If using Tdarr_Plugin_MC93_Migz1FFMPEG or similar plugins:

  • Set enable_bframes to false
  • Otherwise you'll get: Max B-frames 5 exceed 0 / No capable devices found

B-frame support for HEVC NVENC requires RTX 20-series (Turing) or newer.

Migration from Old Server

Source

  • Server: 10.10.0.43 (ubuntu-ct, SSH alias: tdarr)
  • Container: tdarr-clean
  • Data: /home/cal/container-data/tdarr/tdarr-clean/server/ (~4.4GB)

Migration Process

# Stop old server
ssh tdarr "docker stop tdarr-clean"

# Pull data to local workstation (relay)
rsync -avz --progress tdarr:/home/cal/container-data/tdarr/tdarr-clean/server/ /tmp/tdarr-server-data/

# Push to new server
rsync -avz --progress /tmp/tdarr-server-data/ cal@10.10.0.226:/home/cal/docker/tdarr/server-data/

# Start new server
ssh cal@10.10.0.226 "cd ~/docker/tdarr && docker compose up -d"

Performance

Observed Speeds

  • 1080p H.264 → HEVC: 200+ fps (~8-9x real-time)
  • GPU Utilization: 30-60% encoder, 40-70% decoder
  • Power Draw: ~52W during transcoding (166W max)

Monitoring GPU Usage

# Basic status
nvidia-smi

# Detailed encoder/decoder utilization
nvidia-smi dmon -s u
  • GPU Workers: 1 (leaves headroom for Jellyfin)
  • CPU Workers: 0 (GPU-only transcoding)

Troubleshooting

Error: "Max B-frames X exceed 0"

Cause: Plugin configured with B-frames, but GTX 1070 doesn't support them for HEVC Fix: Disable enable_bframes in the plugin settings

Error: "No capable devices found"

Cause: Usually means incompatible encoding parameters, not missing GPU Check: Run nvidia-smi inside container to verify GPU access:

docker exec tdarr-node nvidia-smi

Slow File Copy (0% progress)

Cause: Large files copying from network share to local cache Expected: ~90 seconds for 10GB file over gigabit Note: This is normal for mapped node architecture - file must copy before transcoding starts

  • Server inventory: networking/server-inventory.md
  • Tdarr technology context: tdarr/CONTEXT.md
  • Tdarr troubleshooting: tdarr/troubleshooting.md