Node installieren

Vorraussetzungen

Um eine Cardano-Node zu betreiben müssen folgende Vorraussetzungen erfüllt werden:

  • x86 Host, virtuelle Maschine oder eine Cloud Instanz (AWS, Digital Ocean etc.) mit mindestens 2 Kernen, 4GB RAM und mindestens 10GB freien Speicherplatz

  • Aktuelle Linux Version, kein Windows oder MacOS

  • Netzwerk, dessen Firewall frei konfigurierbar ist

Dependencies installieren

Wir brauchen die folgenden Packages und Tools auf unserem Linux System um den Source Code herunterzuladen und nutzen zu können:

  • git

  • gcc C-Compiler

  • C++ Support für gcc

  • gmp Library

  • zlib Library

  • systemd Library

  • ncurses Library

  • cabal Haskell Build Tool

  • ghc Haskell Compiler

Für CentOS/RHEL Systeme können wir die Dependencies wie folgt installieren

sudo yum update -y
sudo yum install git gcc gcc-c++ tmux gmp-devel make tar wget -y
sudo yum install zlib-devel libtool autoconf -y
sudo yum install systemd-devel ncurses-devel ncurses-compat-libs -y

Für Debian/Ubuntu Systeme können wir die Dependencies wie folgt installieren

sudo apt-get update -y
sudo apt-get install build-essential pkg-config libffi-dev libgmp-dev -y
sudo apt-get install libssl-dev libtinfo-dev libsystemd-dev zlib1g-dev -y
sudo apt-get install make g++ tmux git jq wget libncursesw5 libtool autoconf -y

Falls du eine andere Linux Version als die oben genannten hast, benutze einen Package-Manager, der mit deinem System kompatibel ist.

Downloaden, entpacken, installieren und updaten von Cabal

wget https://downloads.haskell.org/~cabal/cabal-install-3.2.0.0/cabal-install-3.2.0.0-x86_64-unknown-linux.tar.xz
tar -xf cabal-install-3.2.0.0-x86_64-unknown-linux.tar.xz
rm cabal-install-3.2.0.0-x86_64-unknown-linux.tar.xz cabal.sig
mkdir -p ~/.local/bin
mv cabal ~/.local/bin/

Schaue nun, dass .local/bin in deinem PATH ist

echo $PATH

Falls .local/bin nicht in deinem PATH ist, musst du .local/bin nun zum PATH hinzufügen, das funktioniert wie folgt

Gehe in deinen Home-Ordner

cd

Öffne deine .bashrc Datei mit nano

nano .bashrc

Gehe ans Ende der Datei und füge folgendes hinzu

export PATH="~/.local/bin:$PATH"

Nun speichere die Datei ab und source sie

source .bashrc

Aktualisiere Cabal

cabal update

Wenn alles geklappt hat solltest du nun Cabal Version 3.2.0.0 installiert haben. Du kannst das ganz einfach mit folgendem Kommando überprüfen

cabal --version

GHC installieren

wget https://downloads.haskell.org/~ghc/8.6.5/ghc-8.6.5-x86_64-deb9-linux.tar.xz
tar -xf ghc-8.6.5-x86_64-deb9-linux.tar.xz
rm ghc-8.6.5-x86_64-deb9-linux.tar.xz
cd ghc-8.6.5
./configure
sudo make install
cd ..

Libsodium installieren

git clone https://github.com/input-output-hk/libsodium
cd libsodium
git checkout 66f017f1
./autogen.sh
./configure
make
sudo make install

export LD_LIBRARY_PATH="/usr/local/lib:$LD_LIBRARY_PATH"
export PKG_CONFIG_PATH="/usr/local/lib/pkgconfig:$PKG_CONFIG_PATH"

Cardano-Node Quellcode herunterladen

cd
git clone https://github.com/input-output-hk/cardano-node.git

Erstellt den Ordner cardano-node und lädt den aktuellsten Quelltext herunter

Nachdem der Download fertig ist können wir den Inhalt wie folgt ausgeben

ls cardano-node

Jetzt müssen wir in den Ordner navigieren

cd cardano-node

Derzeit benötigen wir Version 1.18.0

git fetch --all --tags
git tag
git checkout tags/1.18.0

Node erstellen und installieren

Das machen wir mit cabal wie folgt

cabal build all

Anschließend kopieren wir die ausführbaren Dateien in unser .local/bin Verzeichnis

cp -p dist-newstyle/build/x86_64-linux/ghc-8.6.5/cardano-node-1.18.0/x/cardano-node/build/cardano-node/cardano-node ~/.local/bin/
cp -p dist-newstyle/build/x86_64-linux/ghc-8.6.5/cardano-cli-1.18.0/x/cardano-cli/build/cardano-cli/cardano-cli ~/.local/bin/

Nun prüfen wir ob alles geklappt hat. Wenn kein Fehler angezeigt wird, hast du alles richtig gemacht. Es sollte jeweils die Version deiner Node und CLI ausgegeben werden

cardano-cli --version
cardano-node --version

Wenn du ein Update auf eine neuere Version durchführen möchtest machst du das wie folgt.

ACHTUNG: Es könnte sein, dass du den db (Datenbank) Ordner löschen musst

cd cardano-node
git fetch --all --tags
git tag
git checkout tags/<deine-neue-version>
cabal install cardano-node cardano-cli

Last updated

Was this helpful?