GNU/Linux >> Znalost Linux >  >> Panels >> Docker

Jak vytvořit osobní server pro vývojáře na Raspberry Pi za 5 $

V tomto článku se dozvíte, jak vytvořit osobní dev server instalací Git, Node.js, Rust a Docker na Raspberry Pi. Nejlevnější varianta stojí pouhých 5 dolarů. Zde můžete zdarma získat startovací sadu (25 USD).

Raspberry Pi je velmi výkonný počítač v malém balení. Nejlevnější varianta, Raspberry Pi Zero, je schopna provozovat plně funkční distribuci Linuxu a ovládat displej s vysokým rozlišením. Má velikost dvou mincí (US Quarters) a stojí 5 USD.

Raspberry Pi Zero W za 10 USD přichází s integrovaným WiFi a Bluetooth.

V „high end“ si můžete zakoupit stolní sadu Raspberry Pi 4 za méně než 100 $. Má 4jádrový ARM CPU běžící na 1,5 GHz, GPU, 2 GB (až 8 GB) RAM, 16 GB (až 2 TB) úložiště na MicroSD kartách, wifi a Ethernet konektory, USB porty, HDMI porty, které mohou řídit 4K displeje, stejně jako klávesnice a myš.

Raspberry Pi je také více než standardní počítač. Je to zábavné a hacknutelné. Raspberry Pi odkrývá řadu pinů GPIO (General Purpose Input Output). K těmto kolíkům můžete připojit jednoduché senzory (např. teploty, vlhkosti, světla) a zachytit jejich data z aplikací běžících na Pi.

K těmto kolíkům můžete také připojit LED světla a motory a použít aplikaci Pi k ovládání těchto periferních zařízení.

U složitějších senzorů nebo zařízení, jako jsou kamerové moduly, se můžete k Pi připojit také přes USB nebo Wifi a přistupovat k nim softwarově. Pi je skvělé zařízení pro učení a hackování hardwaru. Z tohoto důvodu je široce používán ve vzdělávacím prostředí.

Zábava a učení však nejsou jen pro děti. Díky tak velkému výpočetnímu výkonu a snadnému připojení k síti se pro vás Raspberry Pi může snadno stát osobním aplikačním serverem.

Můžete například umístit webovou aplikaci (například aplikaci pro společné psaní poznámek nebo jen některé dokumenty/videa ke sdílení) na Pi, přinést ji na schůzku a zpřístupnit ji všem v místnosti. Nepotřebujete ani internet. Je zcela decentralizovaný a odolný vůči cenzuře.

Osobní server je užitečný zejména pro vývojáře. Můžete mít samostatné prostředí pro nasazování a testování aplikací na straně serveru, aniž byste si museli zahrávat s notebookem. Osobní dev server je jako Docker na steroidech. V tomto článku vás naučím, jak jej nastavit.

Nejprve si pořiďte Raspberry Pi

Pokud je toto vaše první Raspberry Pi, nejjednodušší (a nejdražší) způsob nastavení je koupit si stolní sadu za přibližně 100 $. Dodává se se vším, co k počítači potřebujete, kromě displeje.

Pokud používáte Pi jako osobní dev server, NEPOTŘEBUJETE displej po úvodním nastavení. Jakmile je notebook zapnutý, můžete do něj pouze SSH!

Naučte se, jak zdarma získat startovací sadu Raspberry Pi, když se zúčastníte tohoto vysoce výkonného výukového cvičení webové aplikace.

Samozřejmě, pokud máte náhradní díly počítače, jako jsou MicroSD karty, USB napájecí zdroj, klávesnice a myš, můžete ušetřit peníze zakoupením pouze desek. Můžete získat desku Raspberry Pi Zero za 5 $ a desku Raspberry Pi 4 za 35 $.

Na desce však chybí karta MicroSD, která funguje jako „pevný disk“ pro ukládání operačního systému a dat. Můžete si zakoupit 16GB MicroSD kartu za 10 $ online, čtečku MicroSD karet a použít Raspberry Pi Imager k nahrání operačního systému na MicroSD kartu z vašeho notebooku.

Dvě oblíbené možnosti jsou Raspberry Pi OS a Ubuntu Linux. Obě jsou distribuce Linuxu založené na Debianu. Většina startovacích sad předinstaluje na své MicroSD karty OS Raspberry Pi (nazývá se NOOBS).

V následujících dvou částech vám prozradím oba operační systémy.

Jak nastavit Raspberry Pi OS

Jakmile vložíte MicroSD kartu s NOOBS a připojíte displej, klávesnici a myš, můžete zapnout napájení!

Odtud postupujte podle pokynů na obrazovce a nainstalujte OS Raspberry Pi (dříve známý jako Raspbian OS). Poté nastavte heslo pro uživatele pi a nastavte wifi připojení.

Po přihlášení přejděte do nabídky Předvolby → Konfigurace Raspberry Pi a povolte SSH. To vám umožní přihlásit se k Pi z jiného počítače.

Poznámka :Abyste mohli Pi používat jako „bezhlavý“ server, můžete si od svého routeru vyžádat statickou IP adresu. V budoucnu stačí Pi zapnout a připojit se k němu přes SSH z ostatních počítačů nebo telefonů.

Operační systém Raspberry Pi je odvozen z distribuce Debian Linux. Dodává se s plnohodnotným prostředím uživatelského rozhraní pro stolní počítače s moderním webovým prohlížečem, terminálem příkazového řádku a výukovými programy, jako jsou IDE pro Python, Java a Scratch.

Pro naše účely nás nejvíce zajímá instalace vývojového a serverového softwaru prostřednictvím terminálu příkazového řádku.

V tomto okamžiku můžete také zjistit IP adresu Pi ve vaší místní síti spuštěním následujícího příkazu. Pak můžete SSH do Pi pomocí této místní IP adresy, uživatelského jména pi a hesla, které jste zadali pi během nastavení.

$ hostname -I
192.168.2.108 172.17.0.1

Kompletní seznam softwarových balíčků nainstalovaných v OS Raspberry Pi naleznete zde. Vždy je dobré aktualizovat a upgradovat na nejnovější balíčky. Spusťte níže uvedený příkaz a buďte trpěliví. Může to trvat hodinu.

$ sudo apt update && sudo apt upgrade

Jak nastavit Ubuntu Server 20.04

Operační systém Raspberry Pi je primárně zaměřen na stolní počítače. Pro vývojáře, kteří chtějí zařízení používat pouze jako server nebo zařízení IoT, je Ubuntu Linux mnohem lepší volbou. Má nejnovější softwarové balíčky a knihovny a mohl by být mnohem efektivnější bez oken na ploše, webového prohlížeče, Javy, her a výukových nástrojů.

Obrazy serveru Ubuntu pro Raspberry Pi si můžete stáhnout z webu a nahrát je na kartu MicroSD. Ale možná mnohem jednodušší způsob je prostě použít Raspberry Pi Imager, vybrat z nabídky Ubuntu Server 20.04 TLS a zapisovat na prázdnou kartu MicroSD.

Jakmile je karta MicroSD připravena, měli byste postupovat podle těchto pokynů a zadat název a heslo sítě WiFi. To umožňuje zařízení Raspberry Pi připojit se k síti, jakmile se spustí.

V podstatě stačí vložit kartu MicroSD do Raspberry Pi, připojit napájení USB a počkat, až bude online. Můžete najít raspberrypi IP zařízení z vašeho WiFi routeru a poté SSH do z libovolného počítače ve vaší síti.

Počáteční uživatelské jméno a heslo jsou ubuntu / ubuntu . Není potřeba ani připojovat monitor nebo klávesnici. To je vše pro zcela bezhlavé nastavení!

Poznámka :Pokud se z nějakého důvodu vaše Raspberry Pi nemůže připojit k WiFi při spuštění, můžete k němu připojit HDMI displej a USB klávesnici. Poté postupujte podle těchto pokynů pro ladění a nastavení WiFi na běžícím systému.

Dále nainstalujme sadu vývojářských nástrojů na Pi.

Instalovat Git

Vždy instaluji Git do všech svých vývojových prostředí, protože spoustu softwaru lze získat přímo z repozitářů Git. Ušetří mi to práci se stahováním a kopírováním.

Git mi také umožňuje ukládat a zálohovat vlastní práci v soukromých úložištích. U malého počítače, jako je Raspberry Pi, bych doporučil ušetřit si práci v Gitu pro případ, že ztratíte zařízení nebo MicroSD kartu.

Následující příkaz nainstaluje Git:

$ sudo apt install git

Instalovat Node.js

Chcete-li z Raspberry Pi udělat osobní dev server pro webové aplikace, musíte nainstalovat moderní běhové prostředí webové aplikace.

Pro většinu dnešních vývojářů je nejlepším výchozím bodem Node.js, který umožňuje psát aplikace na straně serveru v JavaScriptu. Následující dva příkazy nainstalují Node.js do vašeho Pi.

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

Správnou instalaci můžete ověřit spuštěním následujících dvou příkazů. Node i npm jsou nyní k dispozici.

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

Odtud můžete použít npm k instalaci modulů. Například běžně používaný modul npm je expresní rámec pro webové aplikace.

$ npm install express

Nyní si můžete projít příkladem ExpressJS hello world a vytvořit webový server na vašem Pi a používat webový prohlížeč z libovolného počítače ve vaší síti pro přístup k aplikaci!

Instalovat Rust

Rust je rychle rostoucí programovací jazyk pro psaní systémů i webových aplikací. Má blízko k hardwaru, vysokému výkonu a paměti. Díky tomu je Rust skvělým jazykem pro psaní aplikací na zařízeních s omezenými zdroji, jako je Raspberry Pi.

Rust je také nejoblíbenějším programovacím jazykem uživatelů StackOverflow posledních 5 let v řadě. Stojí za váš čas se to naučit!

Důležitým případem použití Rust je kompilace funkcí Rust do WebAssembly a jejich spouštění v aplikacích Node.js pro dosažení výkonu, bezpečnosti a přenositelnosti kódu. Je to skvělá volba pro provozování výpočetně náročných webových aplikací na malém zařízení Raspberry Pi. Ve skutečnosti byste mohli získat zdarma startovací sadu Raspberry Pi, pokud se naučíte, jak to udělat.

Poznámka:přísně vzato, nemusíte na Pi instalovat nástroje Rust. Obvykle potřebujete spouštět pouze programy Rust v Pi. Svůj program Rust můžete zkompilovat na libovolném počítači a poté zkompilované binární soubory zkopírovat do Pi.

Ale přesto, s výkonným CPU, můžete kompilovat programy Rust na Raspberry Pi. Tak proč ne?

Následující příkaz nainstaluje sadu nástrojů kompilátoru Rust na Pi.

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

Spusťte následující příkaz pro nastavení správné cesty bez odhlášení a opětovného přihlášení.

$ source $HOME/.cargo/env

Výše uvedený příkaz také nainstaluje správce balíčků Rust s názvem cargo. Většina vývojářů Rust používá náklad ke stavbě a sdílení své práce.

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

Dále můžete naklonovat naše úložiště pro učení Rust a učit se z příkladů.

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

Zde je příklad ahoj světe. Bavte se!

$ 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!

Podívejte se na oficiální webovou stránku Rust a knihy Rust by Example, kde najdete další učební zdroje.

Naučte se Docker

Viděli jsme, že Raspberry Pi OS a Ubuntu Server jsou velmi schopné distribuce Linuxu se spoustou softwarových balíčků.

Ale co když chci testovat aplikace na jiných OS? Musím vymazat a znovu nainstalovat jiný operační systém na kartu MicroSD? Odpověď je ne. Stačí použít Docker! Následující dva příkazy instalují docker na Raspberry Pi:

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

Spusťte následující příkaz, abyste mohli používat Docker jako uživatel pi:

$ sudo usermod -aG docker pi

Příkaz Docker info ukazuje, že Docker je nyní nainstalován v systému ARM s OS Raspberry Pi.

$ 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
... ...

Dále můžete stáhnout obraz Dockeru pro nejnovější distribuci Ubuntu, spustit jej a přihlásit se do Ubuntu jako uživatel příkazového řádku.

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

Docker
  1. Jak vytvořit osobní souborový server s SSH na Linuxu

  2. Jak nainstalovat server médií Serviio na Raspberry Pi

  3. Jak vytvořit zálohu

  1. Jak postavit Flatpak

  2. Jak aktualizovat Raspberry Pi

  3. Jak nastavit FTP server na vašem Raspberry Pi

  1. Jak nainstalovat Docker na Raspberry Pi

  2. Jak nastavit Raspberry Pi jako DNS server

  3. Jak nainstalovat Ubuntu na Raspberry Pi