Vorbereitung

Bevor wir mit der Mempool.space Installation loslegen können, müssen wir Docker und Docker-Compose auf unserem System installieren, falls noch nicht vorhanden. Alle Schritte dazu finden wir auf der https://docs.docker.com/engine/install/ubuntu Seite, hier der Ablauf:

1
sudo apt-get update 
sudo apt-get install ca-certificates unzip curl gnupg lsb-release

Hinzufügen des GPG-Keys

1
sudo mkdir -p /etc/apt/keyrings
1
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg

Hinzufügen des Repositories

1
2
3
sudo echo \
  "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \
  $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
1
sudo apt-get update
1
sudo apt-get install docker-ce docker-ce-cli containerd.io

Check ob es geklappt hat

1
docker --version

Als Ausgabe müsste so etwas kommen:

1
Docker version 20.10.21, build baeda1f

Hinzufügen des Benutzers in die Docker-Gruppe

1
sudo usermod -aG docker $USER

Wir melden uns ab und neu an, damit die Rechte wirksam sind.

Installation Docker-Compose

Als weitere Komponente müssen wir Docker-Compose installieren.

1
curl -SL https://github.com/docker/compose/releases/download/v2.13.0/docker-compose-linux-x86_64 -o /usr/local/bin/docker-compose

Rechte setzen für docker-compose

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

Check ob alles geklappt hat

1
docker-compose version

Es müsste so etwas kommen:

1
Docker Compose version v2.13.0

Download Mempool.space

In unserem Benutzerverzeichnis clonen wir das Github Repository von Mempool.space.

1
cd ~/

Clonen

git clone https://github.com/mempool/mempool

Anpassen der Konfiguration

Wir wechseln in das Verzeichnis mempool und weiter in das Verzeichnis docker.

1
cd mempool/docker

Hier finden wir eine Konfigurationsdatei für Docker namens docker-compose.yml. Diese bearbeiten wir wie folgt:

1
nano docker-compose.yml

Unter ports ändern wir von

1
2
ports:
  - 80:8080

auf

1
2
ports:
  - 8181:8080

Unter environment ändern wir als erstes das Backend auf electrum

1
MEMPOOL_BACKEND: "none"
1
MEMPOOL_BACKEND: "electrum"

Jetzt müssen wir noch die Electrum-Server-Konfig eintragen, dazu kopieren wir:

1
2
3
ELECTRUM_HOST: "192.168.100.242"
ELECTRUM_PORT: "50002"
ELECTRUM_TLS_ENABLED: "true"

Anpassen der RPC Parameter

1
CORE_RPC_HOST: "172.27.0.1"

auf

1
CORE_RPC_HOST: "192.168.100.242"

Danach

1
CORE_RPC_USERNAME: "mempool"

auf

1
CORE_RPC_USERNAME: "nakamoto"

Und das Passwort

1
CORE_RPC_PASSWORD: "mempool"

auf

1
CORE_RPC_PASSWORD: "satoshi"

Jetzt wechseln wir alle

1
restart: on-failure

in

1
restart: always

Mit STRG + X + Y und Enter speichern wir alles.

Damit ist die gesamte Konfiguration abgeschlossen.

Starten

1
docker-compose up

Wir überprüfen, ob alles klappt, dazu rufen wir unsere Mempool.space URL in unserem Browser auf.

1
http://192.168.100.242:8181

Wenn alles klappt, können wir mit STRG + C Mempool.space stoppen und danach als Daemon starten.

1
docker-compose up -d

Tor

Damit unser Mempool.space auch von extern erreichbar ist, können wir eine onion-Adresse dafür konfigurieren. Dies machen wir, indem wir diese Schritte durchgehen:

1
sudo nano /etc/tor/torrc

Am Schluss hängen wir folgendes an:

1
2
3
4
# Mempool Tor Service
HiddenServiceDir /var/lib/tor/mempool/
HiddenServiceVersion 3
HiddenServicePort 80 127.0.0.1:8181

Mit STRG + X + Y und Enter speichern wir alles.

Jetzt restarten wir Tor

1
sudo systemctl restart tor

Um die Tor-Adresse zu bekommen, müssen wir folgenden Befehl ausführen:

1
sudo cat /var/lib/tor/mempool/hostname

Fertig

Ab jetzt haben wir einen eigenen Mempool.space, den wir immer verwenden sollten.