Skip to content

Installation of the bot on an Amazon Web Services (AWS) Server [German]

Marcel Beining edited this page Apr 8, 2020 · 14 revisions

Anleitung geschrieben von Algo (vielen Dank!), modifiziert von Marcel

Installation

Vorraussetzung:

Benötigte Daten zum Einrichten:

  • Public DNS (Ipv4): z.B. ec2-18-245-32-21.us-east-2.compute.amazonaws.com
  • Telegram API (siehe Bot configuration)
  • Telegram UserID (siehe Bot configuration)
  • API-Schlüssel der jeweiligen Exchanges

Schritte

Verbindung per Putty zu AWS aufbauen:

  • Standardpasswort: ubuntu

Python PIP für Python installieren

sudo apt-get update    //Paketliste updaten
sudo apt-get -y upgrade    //installierte Software upgraden
sudo apt install python3-pip

Sollte es Probleme mit dieser Installation (segmentation fault/Speicherzugriffsfehler) geben, empfiehlt es sich stattdessen Python3.7 zu installieren. Siehe Anleitung.

Bot installieren

Für Python Standardinstallation:

sudo python3 -m pip install eazebot

Für Python3.7

sudo python3.7 -m pip install eazebot
  • Erstellt euch nun einen Ordner mit beliebigem Namen (z.B. mkdir eazebot), wechselt in dieses Verzeichnis (cd eazebot) führt dort folgendes aus, um die Konfigurationsdateien zu kopieren
python3 -m eazebot --init

oder für Python3.7

python3.7 -m eazebot --init
  • der Ordner sollte nun u.a. einige json Dateien enthalten, was man mit dem ls Befehl checken kann.

Daten für den Bot eintragen

  • Nun muss der Bot noch konfiguriert werden. Dazu gibt es einen interaktiven Dialog, den ihr wie folgt starten könnt:
python3 -m eazebot --config

oder für Python3.7

python3.7 -m eazebot --config
  • Mit Rechtsklick kann man den Inhalt der Zwischenablage einfügen (z.B. um die API-Keys von der Exchange zu kopieren)

Starten des Bots:

python3 -m eazebot

bzw für Python3.7

python3.7 -m eazebot

Fertig

  • Über den Telegram kann nun mit dem Bot komuniziert werden
  • Falls Putty beendet bzw. geschlossen wird ist auch der Bot bzw. Eazebot beendet.
  • Abhilfe schafft z.B. https://wiki.ubuntuusers.de/Screen/ z.B. nach Neustart von Putty
  1. sudo apt-get install screen
  2. screen -S xyz //neue Sitzung mit Namen xyz wird innerhalb Putty gestartet und verwendet
  3. dann dort den Bot starten (siehe Schritt Updaten und Starten vom Bot)
  4. Putty kann nun geschlossen werden ohne dass der Bot beendet wird

Updaten

Vergesst nicht regelmäßig euren Bot mit folgendem Befehl upzudaten:

sudo python3 -m pip install eazebot --upgrade

bzw für Python3.7

sudo python3.7 -m pip install eazebot --upgrade

Einrichtung Autostart für Ubuntu Server AWS

  1. Local-Datei öffnen
sudo nano /etc/rc.local
  1. folgendes VOR das „Exit 0“ einfügen (startet einen Screen/Hintergrundfenster mit dem Namen eazebot und führt die Datei „meinautostart“ aus als Benutzer Ubuntu):
/usr/bin/sudo -u ubuntu /usr/bin/screen -dmS eazebot /home/ubuntu/meinautostart
  1. mit STRG+X, y, enter die Datei speichern
  2. Datei „meinautostart“ erstellen und öffnen
nano meinautostart
  1. folgendes einfügen:
#!/bin/sh
cd /
cd home/ubuntu/
python3 -m eazebot  # bzw python3.7
exit 0

Wichtig: Solltet ihr beim Schritt Bot installieren ein Verzeichnis für den EazeBot angelegt haben, muss die dritte Zeile auf dieses Verzeichnis hinweisen, also wenn der Ordner eazebot heißt: cd home/ubuntu/eazebot

  1. mit STRG+X, y, enter die Datei speichern/erstellen

Nach einem Reboot (sudo reboot) sollte Eazebot automatisch starten, mit screen -r oder screen -x eazebot kann man zu dem Hintergrundfenster wechseln, in dem der Bot läuft. Mit STRG-C lässt sich z.B. der Bot anhalten.

Falls nach dem reboot der Bot nicht gestartet wird, müssen evtl. noch die Benutzerrechte der Dateien meinautostart mit z.B. chmod -777 meinautostart angepasst werden