Was Du dafür brauchst?

Als Hostsystem empfehle ich Dir den Kodlix GN41 MiniPC. Dieser ist super leise (da kein Lüfter), verfügt über 64 GB eMMC Speicher und 8 GB DDR3 RAM. Somit hat er genügend Power für FHEM und noch viele weitere Dinge.

Zunächst musst Du Dir das aktuelle Image von Ubuntu 18.04 Server laden.
Auch wenn es eine höhere Version gibt, so wird die 18.04 noch sehr lange supportet.
Die aktuelle Version findest Du auf https://www.ubuntu.com/#download.
Ich empfehle Dir die Server Variante (Ubuntu Server) zu nehmen, da diese schneller lädt und eine geringere Größe hat – außer Du benötigst eine grafische Benutzungsoberfläche.

Dieses Image kannst Du dann mit Belena Etcher auf einen USB-Stick flashen. Du brauchst dafür mind. 4 GB.

Wenn dies getan ist, kann die Installation beginnen.

Ubuntu 18.04 Sever installieren

ACHTUNG: Wenn das Gerät mit einem vorinstallierten Windows kommt, solltest Du eine Sicherungskopie machen. Der beschriebene Vorgang löscht das System unwiderruflich.

Nachdem Du den USB-Stick geflasht hast, steckst Du diesen in den USB-Anschluss Deines MiniPCs. Achte darauf, dass eine Tastatur mit der Entfernen-Taste (ENTF) angeschlossen ist. Zusätzlich musst Du den MiniPC an einen Monitor oder TV per HDMI anschließen. Später kann das Gerät irgendwo ohne Monitor betrieben werden.

Anschließend schaltest Du das Gerät ein und hälst so lange die ENTF-Taste gedrückt, bis Du im Bios angekommen bist. Dort gehst Du in den Bereich „Boot“ und wählst dort den USB-Stick als primäres Bootgerät aus. Nach dem Speichern startest Du den Rechner neu.

Nun bootet das System vom USB-Stick.

Du musst nun die Festplatte partitionieren. Hierfür habe ich 3 Partitionen angelegt:
Root / 15 GB, EXT4
Home /home 45 GB, EXT4
Swap swap 2.74 GB, swap area

Wenn alles angegeben wurde, drückst Du auf „Finish partitioning and write changes to disk“.
Es dauert ca. 5-10 Minuten bis die Partitionen angelegt wurden.

Nun kannst Du mit der Installation fortsetzen.

Als nächstes wirst Du gefragt, welche Pakete Du installieren willst.

Hier wählst Du „openssh-server“ aus, damit Du Dich später per SSH einwählen kannst. In einigen älteren Installern wird dies nicht angeboten, dann musst Du es noch einmal nachträglich installieren: apt-get install openssh-server

Du musst aber kein Docker bei der Installation auswählen, das machen wir im nächsten Schritt manuell, um die aktuellste Version zu bekommen.

Docker installieren

cd ~
sudo apt-get install apt-transport-https ca-certificates curl software-properties-common
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -

sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"

sudo apt-get update
sudo apt-get install docker-ce

sudo usermod -aG docker ${USER}

Anschließend solltest Du noch docker-compose installieren.
Den aktuellen Link findest Du auf hier: https://docs.docker.com/compose/install/


sudo curl -L "https://github.com/docker/compose/releases/download/1.24.0/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose

sudo chmod +x /usr/local/bin/docker-compose

Rechte setzen und überprüfen

sudo groupadd docker
sudo usermod -aG docker $USER

Damit Du später den Busware CUL verwenden kannst, solltest Du gleich auch die Zuweisungen für Dialout vornehmen:

sudo usermod -aG dialout root
sudo usermod -aG dialout $USER

Anschließend kurz abmelden und wieder anmelden, damit die Rechte gesetzt werden.

Docker beim Systemstart automatisch starten

sudo systemctl enable docker