I nästa artikel ska vi ta en titt på LXD-containrar. En kollega talade redan om dem på den här bloggen för en tid sedan. I den artikeln Jag har redan gjort det klart dessa behållare är användbara av olika skäl. De isolerar applikationer från resten av systemet, de är bärbara, lätta att klona och / eller flytta till andra operativsystem. När det gäller Gnu / Linux, de fungerar på samma sätt i alla distributioner, utan behov av anpassningar.
Hamnarbetare är en populär lösning utformad för att innehålla en enda applikation, till exempel en MySQL-databasserver. LXD liknar i vissa avseenden, men det är det utformad för att innehålla ett komplett operativsystem. LXD kommer inte att virtualisera hårdvara som QEMU o VirtualBox. Det betyder att det är väldigt snabbt och erbjuder nästan exekveringshastighet.
Som ett exempel på användning kan vi skapa en LXD-behållare, installera en databasserver och en http-server. Där har vi möjlighet att skapa en webbplats med WordPress och vid behov kan vi byta från moln till moln helt enkelt genom att flytta den här LXD-behållaren vid behov. Eftersom en container är lätt att klona kan din webbplats till och med laddas upp till flera molnleverantörer för att skapa en redundant och mycket tillgänglig installation.
Installera och konfigurera LXD
För att installera LXD måste du bara öppna en terminal (Ctrl + Alt + T) och installera. Vad mer vi kan också installera ZFS-verktyg. Dessa hjälper oss att påskynda vissa åtgärder och spara diskutrymme när vi arbetar med containrar.
sudo apt install zfsutils-linux lxd
till starta LXD-konfiguration, i samma terminal skriver vi:
sudo lxd init
Här kan vi trycka intro för att välja standardvärdena.
Hitta och starta en LXD-distributionsbild
till se en lista över Ubuntu-bilder, i terminalen skriver vi:
lxc image list ubuntu: arch=amd64|head
Det kan utelämna arch = amd64 om du behöver bilder för andra arkitekturer. I bilden ovan har resultaten varit begränsade (med | huvud) för att göra det lättare att läsa.
Som du kunde se på skärmdumpen ovan, var fingeravtrycket från Ubuntu 18.04 (dcbc8e3e5c2e) Jag lämnade den markerad. Om du är intresserad starta en container med den distributionen bör använda det fotavtrycket. Kommandot att utföra skulle vara:
lxc launch ubuntu:dcbc8e3e5c2e
Hantera LXD-behållare
till lista alla skapade behållare, du behöver bara skriva:
lxc list
Ryggraden 'IPV4'är särskilt viktigt om du har några tjänster som körs på den instansen. Om du till exempel körde en Apache http-server, när du skriver IP "10.191.112.88”Webbplatsen som finns i behållaren visas i webbläsaren.
till stoppa en container, du behöver bara skriva:
lxc stop nombre-contenedor
Detta kan vara tidskrävande eller misslyckas med icke-Ubuntu-distributioner. Om detta händer kan du alltid använda systemctl avstängning för att stoppa det.
Om allt annat misslyckas kan du kraftstopp med:
lxc stop nombre-contenedor --force
till börja med en behållare du borde skriva:
lxc start nombre-contenedor
Vill man flytta in i behållaren, springa:
lxc shell nombre-contenedor
Inuti behållaren du kan installera program med 'sudo apt install'och gör vad du än skulle göra med en normal Gnu / Linux-distribution, till exempel, ställa in en Apache-server.
När som helst gå ut ur behållaren, bara Skriv:
exit
Överför filer till / från LXD Containers
till ladda upp en fil till din container, använd följande syntax:
lxc file push /ruta/al/archivo/local/nombre-archivo nombre-contenedor/ruta/al/archivo/subido/nombre-archivo
Inkludera namnet på filen som kommer att skapas, inte bara katalogen där du vill lämna den.
till ladda en katalog istället för en fil:
lxc file push /ruta/al/directorio nombre-contenedor/ruta/al/directorio/remoto --recursive --verbose
till ladda ner en katalog från behållaren till ditt operativsystem rektor:
lxc file pull nombre-contenedor/ruta/al/directorio/remoto ruta/al/directorio --recursive --verbose
Detta täcker grundläggande användning av LXD-behållare. Det finns mer avancerade funktioner som ögonblicksbilder, begränsningar av resurser som CPU och RAM, klonbehållare etc. Allt detta och mer kan konsulteras i officiell dokumentationi projektwebbplats eller på din sida GitHub.