I den næste artikel skal vi se på LXD-containere. En kollega talte allerede om dem på denne blog for nogen tid siden. I den artikel Jeg har allerede gjort det klart disse containere er nyttige af forskellige årsager. De isolerer applikationer fra resten af systemet, de er bærbare, lette at klone og / eller flytte til andre operativsystemer. I tilfælde af Gnu / Linux, de fungerer på samme måde i enhver distributionuden behov for tilpasninger.
Docker er en populær løsning designet til at indeholde en enkelt applikation såsom en MySQL-databaseserver. LXD er ens i nogle henseender, men det er det designet til at indeholde et komplet operativsystem. LXD vil ikke virtualisere hardware som QEMU o VirtualBox. Dette betyder, at det er meget hurtigt og tilbyder næsten naturlig eksekveringshastighed.
Som et eksempel på brug kunne vi oprette en LXD-container, installere en databaseserver og en http-server. Der har vi muligheden for at oprette et websted med WordPress, og om nødvendigt kan vi skifte fra sky til sky ved blot at flytte denne LXD-container, hvor det er nødvendigt. Da det er let at klone en container, kan dit websted endda uploades til flere skyudbydere for at oprette en overflødig og meget tilgængelig opsætning.
Installer og konfigurer LXD
For at installere LXD skal du bare åbne en terminal (Ctrl + Alt + T) og installere. Hvad mere er vi kan også installere ZFS-hjælpeprogrammer. Disse hjælper os med at fremskynde nogle operationer og spare diskplads, når vi arbejder med containere.
sudo apt install zfsutils-linux lxd
til start LXD-konfiguration, i den samme terminal skriver vi:
sudo lxd init
Her kan vi trykke Intro for at vælge standardværdierne.
Find og start et LXD-distributionsbillede
til se en liste over Ubuntu-billeder, i terminalen skriver vi:
lxc image list ubuntu: arch=amd64|head
Du kan udelad arch = amd64, hvis du har brug for billeder til andre arkitekturer. På billedet ovenfor er resultaterne begrænsede (med | hoved) for at gøre det lettere at læse.
Som du kunne se i skærmbilledet ovenfor, blev fingeraftrykket fra Ubuntu 18.04 (dcbc8e3e5c2e) Jeg lod det være fremhævet. Hvis du er interesseret start en container med den distribution, du skal bruge det fodaftryk. Kommandoen til at udføre ville være:
lxc launch ubuntu:dcbc8e3e5c2e
Administrer LXD-containere
til liste alle oprettede containere, du skal bare skrive:
lxc list
Rygsøjlen 'IPV4'er især vigtigt, hvis du har nogen tjenester, der kører på den instans. For eksempel, hvis du kørte en Apache http-server, når du skriver IP "10.191.112.88”Hjemmesiden, der er hostet i containeren, vises i browseren.
til standse en container, du skal bare skrive:
lxc stop nombre-contenedor
Dette kan tage lang tid eller mislykkes med ikke-Ubuntu-distributioner. Hvis dette sker, kan du altid bruge systemctl slukning at stoppe det.
Hvis alt andet fejler, kan du tvunget stop med:
lxc stop nombre-contenedor --force
til start med en container skrive:
lxc start nombre-contenedor
Hvis du vil flyt inde i beholderen, løb:
lxc shell nombre-contenedor
Inde i containeren du kan installere programmer med 'sudo apt install'og gør hvad du ellers ville med en normal Gnu / Linux distributionf.eks. opsætning af en Apache-server.
Når som helst komme ud af containeren, skriv bare:
exit
Overfør filer til / fra LXD-containere
til uploade en fil til din container, brug følgende syntaks:
lxc file push /ruta/al/archivo/local/nombre-archivo nombre-contenedor/ruta/al/archivo/subido/nombre-archivo
Inkluder navnet på den fil, der oprettes, ikke kun den mappe, hvor du vil lade den være.
til indlæse et bibliotek i stedet for en fil:
lxc file push /ruta/al/directorio nombre-contenedor/ruta/al/directorio/remoto --recursive --verbose
til download et bibliotek fra containeren til dit operativsystem rektor:
lxc file pull nombre-contenedor/ruta/al/directorio/remoto ruta/al/directorio --recursive --verbose
Dette dækker grundlæggende brug af LXD-containere. Der er mere avancerede funktioner såsom snapshots, begrænsninger på ressourcer som CPU og RAM, klonbeholdere osv. Alt dette og mere kan konsulteres i officiel dokumentation, I projektwebsted eller på din side GitHub.