GNU/Linux >> LINUX-Kenntnisse >  >> Panels >> Docker

So erstellen Sie einen persönlichen Dev-Server auf einem 5-Dollar-Raspberry Pi

In diesem Artikel erfahren Sie, wie Sie einen persönlichen Entwicklungsserver erstellen, indem Sie Git, Node.js, Rust und Docker auf einem Raspberry Pi installieren. Die günstigste Option kostet nur 5 $. Sie können hier ein kostenloses Starter-Kit ($25) erhalten.

Der Raspberry Pi ist ein sehr leistungsfähiger Computer in einem winzigen Paket. Die günstigste Option, der Raspberry Pi Zero, ist in der Lage, eine voll ausgestattete Linux-Distribution auszuführen und ein hochauflösendes Display zu steuern. Es ist so groß wie zwei Münzen (US Quarters) und kostet 5 $.

Für 10 US-Dollar ist der Raspberry Pi Zero W mit integriertem WLAN und Bluetooth ausgestattet.

Am „High-End“ können Sie ein Raspberry Pi 4-Desktop-Kit für weniger als 100 US-Dollar erwerben. Es verfügt über eine 4-Kern-ARM-CPU mit 1,5 GHz, GPU, 2 GB (bis zu 8 GB) RAM, 16 GB (bis zu 2 TB) Speicher auf MicroSD-Karten, WLAN- und Ethernet-Anschlüsse, USB-Anschlüsse, HDMI-Anschlüsse, die fahren können 4K-Displays sowie Tastatur und Maus.

Auch der Raspberry Pi ist mehr als ein gewöhnlicher Computer. Es macht Spaß und ist hackbar. Der Raspberry Pi legt eine Reihe von GPIO-Pins (General Purpose Input Output) frei. Sie können einfache Sensoren (z. B. Temperatur, Feuchtigkeit, Licht) an diese Pins anschließen und ihre Daten von Ihren Anwendungen erfassen, die auf dem Pi ausgeführt werden.

Sie könnten auch LED-Leuchten und Motoren an diese Pins anschließen und Ihre Pi-Anwendung verwenden, um diese Peripheriegeräte anzusteuern.

Bei komplexeren Sensoren oder Geräten wie Kameramodulen können Sie sich auch über USB oder WLAN mit dem Pi verbinden und in der Software darauf zugreifen. Der Pi ist ein großartiges Gerät zum Lernen und Hardware-Hacking. Aus diesem Grund wird es häufig in Bildungseinrichtungen verwendet.

Spaß und Lernen sind jedoch nicht nur etwas für Kinder. Mit so viel Rechenleistung und einfacher Vernetzung kann der Raspberry Pi ganz einfach zu einem persönlichen Anwendungsserver für Sie werden.

Sie können beispielsweise eine Webanwendung (z. B. eine App für gemeinsame Notizen oder nur einige Dokumente / Videos zum Teilen) auf einem Pi platzieren, zu einem Meeting mitnehmen und allen im Raum zugänglich machen. Sie brauchen nicht einmal das Internet. Es ist vollständig dezentralisiert und zensurresistent.

Der Personal Server ist besonders nützlich für Entwickler. Sie können eine separate Umgebung zum Bereitstellen und Testen Ihrer serverseitigen Anwendungen haben, ohne sich mit Ihrem Laptop herumschlagen zu müssen. Ein persönlicher Entwicklungsserver ist wie Docker auf Steroiden. In diesem Artikel werde ich Ihnen beibringen, wie Sie einen einrichten.

Besorg dir zuerst einen Raspberry Pi

Wenn dies Ihr erster Raspberry Pi ist, besteht die einfachste (und teuerste) Einrichtungsmethode darin, ein Desktop-Kit für etwa 100 US-Dollar zu kaufen. Es kommt mit allem, was Sie für einen Computer brauchen, außer dem Display.

Wenn Sie den Pi als persönlichen Entwicklungsserver verwenden, benötigen Sie nach der Ersteinrichtung KEINE Anzeige. Sie können einfach von Ihrem Laptop aus per SSH darauf zugreifen, sobald es eingeschaltet ist!

Erfahren Sie, wie Sie Ihr Raspberry Pi-Starterkit kostenlos erhalten, wenn Sie an dieser Lernübung für leistungsstarke Webanwendungen teilnehmen.

Wenn Sie Computerersatzteile wie MicroSD-Karten, USB-Netzteil, eine Tastatur und eine Maus herumliegen haben, können Sie natürlich Geld sparen, indem Sie nur die Platinen kaufen. Sie könnten ein Raspberry Pi Zero Board für 5 $ und ein Raspberry Pi 4 Board für 35 $ bekommen.

Was dem Board jedoch fehlt, ist eine MicroSD-Karte, die als „Festplatte“ zum Speichern des Betriebssystems und der Daten fungiert. Sie können eine 16-GB-MicroSD-Karte für 10 US-Dollar online kaufen, einen MicroSD-Kartenleser und den Raspberry Pi Imager verwenden, um ein Betriebssystem von Ihrem Laptop auf die MicroSD-Karte zu laden.

Die beiden beliebtesten Optionen sind Raspberry Pi OS und Ubuntu Linux. Beide sind Debian-basierte Linux-Distributionen. Die meisten Starterkits installieren das Raspberry Pi OS auf ihren MicroSD-Karten vor (es heißt NOOBS).

In den nächsten beiden Abschnitten werde ich Sie durch beide Betriebssysteme führen.

So richten Sie Raspberry Pi OS ein

Sobald Sie die MicroSD-Karte mit NOOBS eingelegt und ein Display, eine Tastatur und eine Maus angeschlossen haben, können Sie das Gerät einschalten!

Befolgen Sie von dort aus einfach die Anweisungen auf dem Bildschirm, um Raspberry Pi OS (früher bekannt als Raspbian OS) zu installieren. Richten Sie dann ein Passwort für den Benutzer pi ein und richten Sie die WLAN-Verbindung ein.

Nachdem Sie sich angemeldet haben, gehen Sie zum Menü Preferences → Raspberry Pi Configuration und aktivieren Sie SSH. Dadurch können Sie sich von einem anderen Computer aus beim Pi anmelden.

Hinweis :Um den Pi als „headless“ Server zu verwenden, könnten Sie eine statische IP-Adresse von Ihrem Router anfordern. In Zukunft können Sie den Pi einfach einschalten und sich über SSH von Ihren anderen Computern oder Telefonen aus mit ihm verbinden.

Das Raspberry Pi OS ist von der Linux-Distribution Debian abgeleitet. Es verfügt über eine vollständige Desktop-UI-Umgebung mit einem modernen Webbrowser, einem Befehlszeilenterminal und Lernprogrammen wie IDEs für Python, Java und Scratch.

Für unsere Zwecke sind wir hauptsächlich daran interessiert, Entwicklungs- und Serversoftware über das Befehlszeilenterminal zu installieren.

An dieser Stelle können Sie auch die IP-Adresse des Pi in Ihrem lokalen Netzwerk herausfinden, indem Sie den folgenden Befehl ausführen. Dann können Sie sich mit dieser lokalen IP-Adresse, dem Benutzernamen pi und dem Passwort, das Sie pi während der Einrichtung gegeben haben, per SSH in den Pi einloggen.

$ hostname -I
192.168.2.108 172.17.0.1

Eine vollständige Liste der auf dem Raspberry Pi OS installierten Softwarepakete finden Sie hier. Es ist immer eine gute Idee, auf die neuesten Pakete zu aktualisieren und zu aktualisieren. Führen Sie den folgenden Befehl aus und seien Sie geduldig. Es kann eine Stunde dauern.

$ sudo apt update && sudo apt upgrade

So richten Sie Ubuntu Server 20.04 ein

Das Raspberry Pi OS ist in erster Linie auf ein Desktop-Erlebnis ausgerichtet. Für Entwickler, die das Gerät lediglich als Server oder IoT-Gerät nutzen möchten, ist Ubuntu Linux die deutlich bessere Wahl. Es verfügt über die neuesten Softwarepakete und Bibliotheken und könnte ohne Desktop-Fenster, Webbrowser, Java, Spiele und Lerntools weitaus effizienter sein.

Sie können Ubuntu Server-Images für Raspberry Pi aus dem Internet herunterladen und auf eine MicroSD-Karte laden. Aber vielleicht ist es viel einfacher, einfach den Raspberry Pi Imager zu verwenden, Ubuntu Server 20.04 TLS aus dem Menü auszuwählen und auf eine leere MicroSD-Karte zu schreiben.

Sobald die MicroSD-Karte vorbereitet ist, sollten Sie diese Anweisungen befolgen, um den Namen und das Passwort Ihres WLAN-Netzwerks einzugeben. Dadurch kann sich das Raspberry Pi-Gerät mit dem Netzwerk verbinden, sobald es hochfährt.

Grundsätzlich können Sie die MicroSD-Karte einfach in den Raspberry Pi stecken, die USB-Stromversorgung anschließen und dann warten, bis sie online ist. Sie können den raspberrypi finden Geräte-IP von Ihrem WLAN-Router und dann SSH von einem beliebigen Computer in Ihrem Netzwerk aus.

Der anfängliche Benutzername und das Passwort lauten ubuntu / ubuntu . Es muss nicht einmal ein Monitor oder eine Tastatur angeschlossen werden. Das war's für ein komplett kopfloses Setup!

Hinweis :Wenn sich Ihr Raspberry Pi aus irgendeinem Grund beim Start nicht mit WLAN verbinden kann, können Sie ein HDMI-Display und eine USB-Tastatur daran anschließen. Befolgen Sie dann diese Anweisungen zum Debuggen und Einrichten von WLAN auf dem laufenden System.

Als Nächstes installieren wir den Developer Tool Stack auf dem Pi.

Git installieren

Ich installiere Git immer auf allen meinen Entwicklungsumgebungen, da viele Software direkt aus Git-Repositories abgerufen werden kann. Es erspart mir die Mühe des Herunterladens und Kopierens.

Git ermöglicht es mir auch, meine eigene Arbeit in privaten Repositories zu speichern und zu sichern. Für einen kleinen Computer wie Raspberry Pi würde ich empfehlen, dass Sie die Arbeit in Git speichern, falls Sie das Gerät oder die MicroSD-Karte verlieren.

Der folgende Befehl installiert Git:

$ sudo apt install git

Node.js installieren

Um den Raspberry Pi in einen persönlichen Entwicklungsserver für Webanwendungen zu verwandeln, müssen Sie eine moderne Laufzeitumgebung für Webanwendungen installieren.

Für die meisten Entwickler ist heute Node.js der beste Ausgangspunkt, mit dem Sie serverseitige Anwendungen in JavaScript schreiben können. Die folgenden beiden Befehle installieren Node.js auf Ihrem Pi.

$ curl -sL https://deb.nodesource.com/setup_10.x | sudo bash -
$ sudo apt install nodejs

Sie können überprüfen, ob die Installation korrekt durchgeführt wurde, indem Sie die folgenden beiden Befehle ausführen. Sowohl node als auch npm sind jetzt verfügbar.

$ node -v
v10.19.0
$ npm -v
5.8.0

Von hier aus können Sie npm verwenden, um Module zu installieren. Ein häufig verwendetes npm-Modul ist beispielsweise das Express-Framework für Webanwendungen.

$ npm install express

Jetzt können Sie das ExpressJS-Hello-World-Beispiel durchgehen, um einen Webserver auf Ihrem Pi zu erstellen, und Webbrowser von jedem Computer in Ihrem Netzwerk verwenden, um auf die Anwendung zuzugreifen!

Rust installieren

Rust ist eine schnell wachsende Programmiersprache zum Schreiben von Systemen und Webanwendungen. Es ist hardwarenah, performant und speichersicher. Das macht Rust zu einer großartigen Sprache zum Schreiben von Anwendungen auf ressourcenbeschränkten Geräten wie dem Raspberry Pi.

Außerdem ist Rust seit 5 Jahren in Folge die beliebteste Programmiersprache von StackOverflow-Benutzern. Es lohnt sich, es zu lernen!

Ein wichtiger Anwendungsfall von Rust besteht darin, Rust-Funktionen in WebAssembly zu kompilieren und sie in Node.js-Anwendungen auszuführen, um Leistung, Sicherheit und Codeportabilität zu erreichen. Es ist eine großartige Wahl, um rechenintensive Webanwendungen auf einem kleinen Raspberry Pi-Gerät auszuführen. Tatsächlich könnten Sie ein kostenloses Raspberry Pi-Starterkit erhalten, wenn Sie lernen, wie das geht.

Hinweis:Genau genommen müssen Sie keine Rust-Tools auf dem Pi installieren. Normalerweise müssen Sie nur Rust-Programme im Pi ausführen. Sie können Ihr Rust-Programm auf jedem Computer kompilieren und dann die kompilierten Binärdateien auf den Pi kopieren.

Mit der leistungsstarken CPU können Sie aber trotzdem Rust-Programme auf dem Raspberry Pi kompilieren. Warum also nicht?

Der folgende Befehl installiert die Rust-Compiler-Toolchain auf dem Pi.

$ curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh

Führen Sie den folgenden Befehl aus, um den richtigen Pfad einzurichten, ohne sich ab- und wieder anzumelden.

$ source $HOME/.cargo/env

Der obige Befehl installiert auch den Rust-Paketmanager namens Cargo. Die meisten Rust-Entwickler verwenden Cargo, um ihre Arbeit zu erstellen und zu teilen.

$ cargo -V
cargo 1.44.1 (88ba85757 2020-06-11)

Als Nächstes können Sie unser Rust-Lern-Repository klonen und anhand von Beispielen lernen.

$ git clone https://github.com/second-state/wasm-learning.git

Hier ist das Hallo-Welt-Beispiel. Viel Spaß!

$ cd wasm-learning/rust/hello
$ cargo build
   Compiling hello v0.1.0 (/home/pi/Dev/wasm-learning/rust/hello)
    Finished dev [unoptimized + debuginfo] target(s) in 4.35s
$ target/debug/hello
Hello, world!

Weitere Lernressourcen finden Sie auf der offiziellen Rust-Website und in den Rust by Example-Büchern.

Docker lernen

Wir haben gesehen, dass das Raspberry Pi OS und Ubuntu Server beide sehr leistungsfähige Linux-Distributionen mit vielen Softwarepaketen sind.

Aber was ist, wenn ich Anwendungen auf anderen Betriebssystemen testen möchte? Muss ich die MicroSD-Karte löschen und ein anderes Betriebssystem neu installieren? Die Antwort ist nein. Sie können einfach Docker verwenden! Die folgenden beiden Befehle installieren Docker auf dem Raspberry Pi:

$ curl -fsSL https://get.docker.com -o get-docker.sh
$ sudo sh get-docker.sh

Führen Sie den folgenden Befehl aus, damit Sie Docker als Pi-Benutzer verwenden können:

$ sudo usermod -aG docker pi

Der Befehl Docker info zeigt, dass Docker jetzt auf einem ARM-System mit Raspberry Pi OS installiert ist.

$ docker info
... ...
 Kernel Version: 4.19.118-v7l+
 Operating System: Raspbian GNU/Linux 10 (buster)
 OSType: linux
 Architecture: armv7l
 CPUs: 4
 Total Memory: 3.814GiB
 Name: raspberrypi
 ID: XERI:ZVVZ:XQVA:HXSH:KRPI:6GL2:5QRE:E7GZ:Z72Q:6SGF:CEI6:GKTC
 Docker Root Dir: /var/lib/docker
... ...

Als Nächstes können Sie ein Docker-Image für die neueste Ubuntu-Distribution abrufen, ausführen und sich als Befehlszeilenbenutzer bei Ubuntu anmelden.

$ docker pull ubuntu
... ...
$ docker run -it ubuntu bash
root# ... enter commands ...

Docker
  1. So erstellen Sie einen persönlichen Dateiserver mit SSH unter Linux

  2. Wie man ein Flatpak baut

  3. So aktualisieren Sie Raspberry Pi

  4. So installieren Sie Serviio Media Server auf Raspberry Pi

  5. So erstellen Sie eine Sicherung

So installieren Sie Jellyfin Media Server auf Ubuntu 20.04 LTS Server/Desktop

So installieren Sie Plex Media Server auf Ubuntu 20.04 LTS Server/Desktop

So installieren Sie Raspbian OS auf Raspberry Pi

So installieren Sie Ubuntu Server auf einem Raspberry Pi

So laden Sie eine Datei auf den Server hoch

So installieren Sie Monica Personal Relationship Management auf Ubuntu