Portainer in Proxmox VM installieren - und installieren von Containern

Vorgeplänkel und warum überhaupt

Es gibt mehrere Varianten, bestimmte Dienste im Heimnetz laufen zu lassen.

Nehmen wir z.B. Jellyfin, kann das ganze auf einer Linux Distribution laufen. Diese kann Teil eines Containers sein oder direkt auf einem PC oder in einer VM installiert werden.
Allerdings gibt es auch z.B. Docker. Docker selber muss allerdings auch erstmal installiert werden, es sei denn ihr nutzt ein fertiges NAS oder anderes System, welches bereits mit Docker ausgestattet ist.

Welche Option für euch am sinnvollsten ist, solltet ihr entscheiden.

Ich selber verwende Proxmox und möchte nun ein paar Dienste installieren, die auch als Docker verfügbar sind, was mir im Idealfall die Installation enorm erleichert.

Da ich darunter auch Jellyfin installieren und meine vorhandene iGPU nutzen möchte, habe ich für mich entschieden, dass die Einrichtung von GPU Passthrough für mich einfacher ist, als unter einem LXC. Außerdem habe ich mich, da es in der Heimserver-Community manchmal Bedenken und Probleme mit Docker/Portainer in einem LXC gibt, erst Recht für eine VM entschieden.

Wie in TrueNAS unter Proxmox beschrieben, muss für das GPU Passthrough zuerst IOMMU eingerichtet werden. Dann kann ganz einfach über die Proxmox GUI eine GPU durchgereicht werden.

Wir installieren nun also eine Linux Distribution unserer Wahl in einer VM, installieren dort Docker und gegebenenfalls Portainer für eine einfachere Verwaltung von Docker per GUI.

Dazu könnt ihr dieser Anleitung folgen: https://www.youtube.com/watch?v=wrlukx-QYRw

Ubuntu Server bekommt ihr hier:
ubuntu.com/download/server

die genutzten Befehle dafür sind:

  • Docker Install:
    curl -fsSL https://get.docker.com -o get-docker.sh
    sudo sh get-docker.sh

  • Portainer Install:
    docker volume create portainer_data
    docker run -d -p 8000:8000 -p 9443:9443 --name portainer --restart=always -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data portainer/portainer-ce:latest

Unter Einstellungen könnt ihr nach dem installieren in der GUI von Portainer noch eine weitere Template Quelle hinzufügen, öffnet dafür GitHub - Qballjos/portainer_templates: Template file for new portainer setup

Installation versch. Container

Einfach:

Portainer → App Templates → Benutzerdefinierte Templates → Hinzufügen

version: '3.8'
services:
  app:
    image: 'jc21/nginx-proxy-manager:latest'
    container_name: nginx-proxy
    restart: unless-stopped
    ports:
      - '80:80'
      - '81:81'
      - '443:443'
    volumes:
      - ./data:/data
      - ./letsencrypt:/etc/letsencrypt

Die Ports lassen sich ändern, sollten jedoch so enden wie hier also auf 80, 81, 443)
→ “Deploy the stack” und fertig ist es…

Etwas weniger einfach:

NGINX Proxy Manager

Aktualisieren von Portainer

Dazu habe ich hier einen Beitrag geschrieben:

1 „Gefällt mir“