Kontejnery

Vytvoření kontejneru

Dejme tomu, že budeme chtít pro jednoduchost a relativní úspornost používat kontejnery s userpacem distribuce Debian 10 (buster). Opět půjdeme cestou použití předpřipraveného image, který lze automaticky stáhnout a nainstalovat do nově vytvořeného kontejneru pomocí template download . Prakticky stačí jediný příkaz lxc-create -t download -n c1 -- -d debian -r buster -a amd64, který kontejner založí a spustí template download, který stáhne distribuci debian, verzi buster pro architekturu amd64. Příklad výstupu je:

root@osboxes:/home/osboxes# lxc-create -t download -n c1 -- -d debian -r buster -a amd64
Setting up the GPG keyring
Downloading the image index
Downloading the rootfs
Downloading the metadata
The image cache is now ready
Unpacking the rootfs

---
You just created a Debian buster amd64 (20201229_05:24) container.

To enable SSH, run: apt install openssh-server
No default root or user password are set by LXC.

Existenci kontejneru ověříme příkazem lxc-ls. Následně jej nastartujeme příkazem lxc-start c1 . Dále ověříme, že kontejner běží pomocí lxc-info c1 a vstoupíme do terminálu kontejneru lxc-attaach c1 a porozhlédneme se uvnitř kontejneru:

root@osboxes:/home/osboxes# lxc-ls
c1   
root@osboxes:/home/osboxes# lxc-info c1
Name:           c1
State:          STOPPED
root@osboxes:/home/osboxes# lxc-start c1
root@osboxes:/home/osboxes# lxc-info c1
Name:           c1
State:          RUNNING
PID:            65910
IP:             10.0.3.9
CPU use:        0.31 seconds
BlkIO use:      120.00 KiB
Memory use:     16.24 MiB
KMem use:       3.99 MiB
Link:           vethwfg1Dt
 TX bytes:      1.51 KiB
 RX bytes:      2.26 KiB
 Total bytes:   3.76 KiB
root@osboxes:/home/osboxes# lxc-attach c1
root@c1:/# hostname
c1
root@c1:/# ps ax
    PID TTY      STAT   TIME COMMAND
      1 ?        Ss     0:00 /sbin/init
     47 ?        Ss     0:00 /lib/systemd/systemd-journald
     56 ?        Ss     0:00 /usr/bin/dbus-daemon --system --address=systemd: --nofork --nopidfile --
     58 ?        Ss     0:00 /lib/systemd/systemd-logind
     72 ?        Ss     0:00 /sbin/dhclient -4 -v -i -pf /run/dhclient.eth0.pid -lf /var/lib/dhcp/dhc
     93 pts/3    Ss+    0:00 /sbin/agetty -o -p -- \u --noclear --keep-baud pts/3 115200,38400,9600 v
     94 pts/1    Ss+    0:00 /sbin/agetty -o -p -- \u --noclear --keep-baud pts/1 115200,38400,9600 v
     95 pts/2    Ss+    0:00 /sbin/agetty -o -p -- \u --noclear --keep-baud pts/2 115200,38400,9600 v
     96 pts/1    Ss+    0:00 /sbin/agetty -o -p -- \u --noclear --keep-baud console 115200,38400,9600
     97 pts/0    Ss+    0:00 /sbin/agetty -o -p -- \u --noclear --keep-baud pts/0 115200,38400,9600 v
     99 pts/2    Ss     0:00 /bin/bash
    110 pts/2    R+     0:00 ps ax

Z terminálu kontejneru lze vystoupit - vrátit se zpět do VM stiskem Ctrl-D nebo příkazem exit.