áá»áœááºá¯ááºá workstation ááœáẠáá±ááá¹áá á¡áá®ážáá»áẠááœá¶á·ááŒáá¯ážááá¯ážáááºáá±áž áááºáááºážáá»ááºáá»á¬ážááᯠá á¯á ááºážááẠáá»ááºážáááºáááºážááᯠááŒá±á¬ááŒáá«áááºá áá»ááºážáááºááŸá¯á¡á¬áž á¡á±á¬ááºáá«á¡áá»ááºáá»á¬ážá ááœáŸááºážááá¯ážááŸá¯á¡á±á¬ááºááœáẠáá®ááœááºáá²á·áááºá
- ááá°áá®áá±á¬áá¬áá¬á áá¬ážáá»á¬ážááẠááá°áá®áá±á¬ IDE áá»á¬ážááŸáá·áº toolchains ááá¯á¡ááºáááº;
- ááá°áá®áá±á¬ ááá±á¬áá»ááºáá»á¬ážááẠtoolchains ááŸáá·áº á á¬ááŒáá·áºááá¯ááºáá»á¬ážá ááá°áá®áá±á¬áá¬ážááŸááºážáá»á¬ážááᯠá¡áá¯á¶ážááŒá¯ááá¯ááºáááºá
áá»ááºážáááºááŸá¯ááŸá¬ á¡áááºááŸááºáᶠááŒááºááœáŸááºážáá¬ážáá±á¬ ááááºáá áºá¡ááœááºáá«ááŸááá±á¬ áááºááºáá±á¬á· ááá¯á·ááá¯áẠá¡áá¯ááºáá¯á¶áá áºáá¯áá±á«áºááœáẠá ááºááœááºážáá¯á¶áž LXD ááœááºááááºáá¬áá»á¬ážá¡ááœááºáž ááœá¶á·ááŒáá¯ážááá¯ážáááºá á±áááºááŒá áºáááºá
ááá°áá¬ááœá²á·á ááºážááŸá¯ Ubuntu ááᯠ20.04.
ááœá±ážáá»ááºááŸá¯áá»á¬ážááŸáá·áº á¡ááŒá±á¬ááºážááŒáá»ááºáá»á¬ážá¡áá±á«áº áá¯á¶ážáááºáá»ááºáá»á¬ážááᯠáá±á¬ááºážáá«ážáá¡áá¯á¶ážááœáẠáá±á¬áºááŒáá¬ážáááºá
1. LXD áááºáááºááŒááºážá
Ð Ubuntu ááᯠ20.04 LXD ááẠsnap ááŸáááá·áºáᬠdeb package á¡ááŒá Ạááá·áºááœááºážááẠááááá¯ááºáá±á¬á·áá«á
$ snap install lxd
áááºáááºááŒá®ážáá±á¬ááºááœáẠáááºááẠáááŠážáá¯ááºáá±á¬ááºááẠááá¯á¡ááºáááº-
$ lxd init
áá»áœááºáá±á¬áºááŒá±á¬ááºážáá²ááá¯ááºáá²á· áá
áºáá¯áááºážáá±á¬ á¡ááá¯ááºážá¡áá¬á storage bakend
- áá«áá¯á¶ážáááºá dir
á¡ááá¯ážááŸááºážáá¯á¶ážá¡ááŒá
áºá áá¯á¶áá»á¬ážááŸáá·áº áááá¹áá°áá»á¬ážááᯠááá¯á¶ážááá·áºá¡ááœáẠááááá±ážáá»ááºáá»á¬áž áá«ááŸááá«áááºá
á¡áá¬ážáá°á áááºážááœáŸááºáá±á¬ááºáá¶ááᯠáá±á¬ááºáá¯á¶ážá¡á¬ážááá¯ážáᬠááœá±ážáá»ááºááŸá¯á¡ááŒá ẠáááºááŸááºáá¶ááááºááŒá áºáááºá
It does support all main LXD features, but is terribly slow and inefficient as it canât perform
áááºáááºážáááá¹áá°áá»á¬áž ááá¯á·ááá¯áẠáá»áŸááºáá áºááŒááºááá¯ááºáá»ááºáá»á¬ážááŸáá·áº ááá¯á·ááŒá±á¬áá·áº á¡áá»áááºááá¯ááºáž instance áááá¯ááŸá±á¬ááºááŸá¯áá áºáá¯áá¯á¶ážááᯠáá°ážáá°áááºááá¯á¡ááºáááºá
2. LXD áááá¯ááá¯áẠá áá áºááá·áºááœááºážááŒááºážá
default
á¡á±á¬ááºáá«ááŒá±á¬ááºážáá²ááŸá¯áá»á¬ážááŸáá·áº
$ lxc profile device add default X0 disk source=/tmp/.X11-unix/X0 path=/tmp/.X11-unix/X0
- ááœááºááááºáá¬áá»á¬ážááŸá á¡ááá®áá±ážááŸááºážáá»á¬ážááẠá¡áááºááŸáẠX11 áá¬áá¬ááŸáá·áº á¡ááŒááºá¡ááŸáẠá¡áá»áá¯ážáááºáá±á¬ááºááá¯ááºá á±áááºá$ lxc profile set default environment.DISPLAY :0
- áá«ááŸáááºáž ááá¬ááááºáááºážáá»áẠááŒá±á¬ááºážáá²ááŸá¯DISPLAY
ááœááºááááºáá¬áá»á¬ážááœáẠááŸááºáááºá áœá¬ áááºáááºáá¬ážáááºá$ lxc profile set default raw.idmap "both 1000 1000"
- ááŸááºáááºáá±á¬á¡ááŸááºá¡áá¬ážááŒá±áá¯á¶ .
3. ááœááºááááºáá¬áá áºáᯠáááºáá®ážááŒááºážááŸáá·áº áááºááŸááºááŒááºážá
áá¯á¶áá
áºáá¯á¡áá±á«áºá¡ááŒá±áá¶á ááœááºááááºáá¬áá
áºáá¯áááºáá®ážááŒááºážá images:ubuntu/20.04
:
$ lxc launch images:ubuntu/20.04 dev1
áá»áœááºáá±á¬áº repository áá²á áá¯á¶ááœá±ááᯠááá¯ááŒáá¯ááºáááºá images:
áá¯á¶á¡áááºááá¯á·á Ubuntu repository á០áá¯á¶áá
áºáá¯ááᯠá¡ááŒá±áá¶á container áá
áºáá¯ááᯠáááºáá®ážááŒááºážááᯠá¡á±á¬ááºáá«á¡ááá¯ááºáž áá¯ááºáá±á¬ááºááá¯ááºáá«áááºá $ lxc launch ubuntu/20.04 dev1
.
ááœááºááááºáá¬á á¡ááŒá áºááœá¶ááá¯á· áááºáá±á¬ááºááœáá·áº-
$ lxc exec dev1 -- bash
Firefox ááŸáá·áº VS Code ( repository á០áá« install áá¯ááºáá«áááºá
$ apt update
$ apt install curl gpg firefox
$ curl https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > packages.microsoft.gpg
$ install -o root -g root -m 644 packages.microsoft.gpg /usr/share/keyrings/
$ echo "deb [arch=amd64 signed-by=/usr/share/keyrings/packages.microsoft.gpg] https://packages.microsoft.com/repos/vscode stable main" > /etc/apt/sources.list.d/vscode.list
$ apt update
$ apt install code
ááŸááºážááŸááºážáááºážáááºážáááá¡á±á¬áẠááœááºááááºáá¬áá áºáá¯á¶ážááá·áºáááºá
poweroff
á¡ááá¯áᯠGPU ááᯠááœááºááááºáá¬áá²ááá¯á· áá áºáá»ááẠá¡ááœááºááœááºáá°áá±á¬ááŒá±á¬áá·áº áááºážááœáẠá¡áá¯ááºáá¯ááºáá±áá±á¬ á¡ááá®áá±ážááŸááºážáá»á¬ážá ááááºáá áºáááºááᯠá¡áá¯á¶ážááŒá¯ááá¯ááºáááºá áá®ááá¯áá¯ááºááá¯á·áááºááá¯á¡ááºáá«áááº:
- device ááá¯ááá·áºáá«á
$ lxc config device add dev1 mygpu gpu
; - ááœááºááááºáá¬ááœáẠáá®áá®ááá¯áááºáááá¯ááºáá¬áá»á¬ážááᯠááá·áºááœááºážáá« - host ááœáẠááá·áºááœááºážáá¬ážááá·áº áá°áá®ááá·áºá¡áá¬áá»á¬ážá
4. ááœááºááááºáá¬ááá¯á¡áá¯á¶ážááŒá¯ááŒááºážá
ááœááºááááºáᬠááááºáááºáá±ážáá«áá áááºážááᯠá áááºááẠááá¯á¡ááºáááº-
lxc start dev1
root ááá¯ááºáá±á¬á¡áá¯á¶ážááŒá¯áá°á¡ááŒá ẠVS Code ááá¯áá¯ááºáá±á¬ááºááŒááºážá ubuntu:
lxc exec dev1 -- sudo --login --user ubuntu code
Firefox ááá¯ááœáá·áºáá«-
lxc exec dev1 -- sudo --login --user ubuntu firefox
á¡ááá®áá±ážááŸááºážáááºážááá¯ážáá»á¬ážááᯠhost ááœááºááŒááááºááŒá áºááŒá®ážá ááá¯á·áá±á¬áºáááºážááá¯á·ááᯠssh áá¯á¶ážááŒá®ážááááºáá áºáá±ážááá¯á·ááŒááºážááŸáá·áºáááºáá°ááẠ- áááºážááá¯á·ááá¯ááœááºááááºáá¬á¡ááœááºážááœááºáá¯ááºáá±á¬ááºáááá·áºáááºá
áá»áœááºá¯ááºááẠáááºážááœáẠá¡áá»ááºáá»á¬ážá áœá¬ áááœá±á·áá±á¬ááŒá±á¬áá·áº - á¡áá¯á¶ážááŒá¯áá±ááá·áº á¡ááá®áá±ážááŸááºážáá»á¬ážá ááŒáááºážáá±á«ááºáá»á¬ážááᯠááááºááẠáá»áœááºá¯ááºááá¯ááºááá¯áẠááá·áºáááºáá¬ážáá«áááºá
áá áááá¯á¶áž
ááœá¶á·ááŒáá¯ážááá¯ážáááºááŸá¯á¡ááœáẠáááºáá¶áá±á¬ááºááœááºáá±ážááá·áº OS ááᯠá¡áá¯á¶ážáááŒá¯ááá¯áá«á áááºážááẠááœá¶á·ááŒáá¯ážááá¯ážáááºáá±ážáááááá¬áá»á¬áž áááºáááºááŒááºážá áááºááºááá®ááá®áá¬áá¬ážááŸááºážáá»á¬ážá á áá áºá¡á áááºá¡ááá¯ááºážáá»á¬ážááᯠáááá»áá±á¬áááºážáááºážááŒáá·áº ááŒááºáááºááŒááºážááŸáá·áº á¡ááŒá¬ážáá±á¬ ááŒááºááŸááºááŸá¯áá»á¬áž ááŒá¯áá¯ááºááŒááºážááá¯á· ááá¯á¡ááºáááºááŒá áºáááŒáá·áº ááœá¶á·ááŒáá¯ážááá¯ážáááºááŸá¯ááá¯ááºáᬠáááºáá¶áá±á¬ááºááœááºáá±ážááá·áº OS ááᯠááá¯á¶ážááá¯áá«á á€á¡áá¬á¡á¬ážáá¯á¶ážááẠá¡ááŒá¬ážáá±á¬ ááœá¶á·ááŒáá¯ážááá¯ážáááºááŸá¯ááá¯ááºáá±á¬ áá±á¬á·ááºáá² ááá¯á·ááá¯áẠOS áá áºáá¯áá¯á¶ážááœáẠááá»áŸá±á¬áºááá·áºáá¬ážáá±á¬ á¡áá°á¡áá»áá·áºáá»á¬ážáá®ááá¯á· áŠážáááºááœá¬ážá á±ááá¯ááºáááºá á¥ááá¬á¡á¬ážááŒáá·áºá OpenSSL ááœá²á·á ááºážááŸá¯áá¯á¶á á¶ááœáẠá¡ááŒá±á¬ááºážá¡áá²áá»á¬ážááẠOS ááᯠááŸááºáááºá áœá¬á áááºááŒááºážá០áááºááœá¬ážá á±áááºá
ááœá¶á·ááŒáá¯ážááá¯ážáááºááŸá¯áááºáááºážáá»ááºáá»á¬ážááᯠáá®ážááŒá¬ážááœá²áá¯ááºááẠááá°áá®áá±á¬ áááááá¬áá»á¬ážááᯠáá»áœááºá¯ááºááŒáá¯ážá á¬ážáá²á·ááŒá®ážááŒá®-
- virtual machines (KVMá VirtualBox á áááºááŒáá·áº) ááẠá¡áááºááŸá¬ážáá¯á¶áž ááœá±ážáá»ááºááŸá¯ááŒá áºáááºá ááá¯á·áá±á¬áº áááºážááá¯á·ááẠWindows á¡á±á¬ááºááœáẠááœá¶á·ááŒáá¯ážááá¯ážáááºááŸá¯á¡ááœáẠá¡ááŒá¬ážááœá±ážáá»ááºá áá¬áá»á¬áž áááŸááá±á¬áºáááºáž (á¡áááºááŸááºááẠLinux ááŒá áºáá«á)á
- áá±ááá¹ááá ááºáá áºáá¯áá±á«áºááœááºáááºáááºáá±áá±á¬ cloud ááœá¶á·ááŒáá¯ážááá¯ážáááºáá±ážáááááá¬áá»á¬áž (ááœááºááááºáá¬áá áºáá¯á¡ááœááºáž Cloud9 ááá¯á·ááá¯áẠvirtual machineá Eclipse Che á áááºááŒáá·áº) - áááºážááá¯á·ááẠá€áá¯ááºáá±á¬ááºáá»ááºá¡ááœáẠááá®ááœááºááá±ážáá«á áááºážááá¯á·ááẠáááºáá±á¬ááºážááœá²á·á ááºážáá¯á¶ááŸáá·áº ááŒá¯ááŒááºááááºážááááºážááŸá¯áá»á¬áž ááá¯á¡ááºáááºá áááºážááá¯á·ááᯠáááºááœááºáá¬ážááá·áºá¡ááœáẠáááºážááá¯á·ááᯠá¡áá¯á¶ážááŒá¯ááŒááºážááẠá¡áá±á¬ááºážáá¯á¶ážááŒá áºáááºá áááºááœááºáá»áẠ- ááá¯ááºážááááºá;
- Docker ááœááºááááºáá¬áá»á¬ážááᯠá¡ááŒá¬ážá¡áá¬áá áºáá¯á¡ááœáẠáááºáá¶áááºááœááºáá¬ážáá«áááºá áá»áœááºá¯ááºá¡ááŒááºá¡áá áá®ážááŒá¬ážááœááºááááºáá¬áá»á¬ážááœáẠááá¯ááºááá¯ážááá±ážáá±á¬ áá±á¬á·ááºáá²ááºááᯠá¡áá¯á¶ážááŒá¯á áá»ááºááŒááºá áœá¬ áá¯á¶áá°ááá¯ááºááŒááºážá¡ááœáẠáááºážááá¯á·ááẠá¡ááœááºá¡áááºááŒá±áááºááá¯ááºáá±á
ááœá±ážáá»ááºáá¬ážáá±á¬áá»ááºážáááºááŸá¯ááẠáááºážáááá¯ážááŸááºážááŸá¯ááŸáá·áº áááºáá±á¬ááºááẠá¡áá¬ážá¡áá®ážáááºážáá«ážááŒááºážááá¯á·ááŒáá·áº áá»áœááºá¯ááºááᯠá¡áááºááŒá®ážá
á±áá«áááºá ááœááºááááºáá¬áá»á¬ážá¡ááœááºážááœááºá áááºááẠááá±á¬áá»ááºááá¯ááºáᬠáá®ážááá·áºáá»ááºážáááºááŸá¯áá»á¬ážááᯠáááºáá¯á¶ážááá¯ááºáááº- á¡áá¬á¡á¬ážáá¯á¶ážááᯠááá¯ááºááá¯ááºááá·áºááœááºážááŒá®áž á
á®á
ááºáááºááŸááºááŒááºáž ááá¯á·ááá¯áẠá¡ááá¯á¡áá»á±á¬ááºá
áá
Ạ(áá¯ááºáá±ážá Ansible á
áááºááŒáá·áº) ááᯠá¡áá¯á¶ážááŒá¯áááẠá¡áá¯á¶ážáá»ááá¯ááºááẠ$ lxc launch images:ubuntu/16.04 dev16
.
á¡áá®ážáá»ááºááŒááºážáá ááºážáááºážáá»ááºáá»á¬ážáá ááœááºááááºáá¬ááŒá¯áá¯ááºááŒááºážááœáẠvirtualization ááŸáá·áºááŸáá¯ááºážááŸááºáá«á ááá¯ááá¯ááŒá®ážáá¬ážáá±á¬ááá¯ááºááá¯ááºááŸá¯áá»ááºááŸá¬ááŒááºááŸáááŒá±á¬ááºáž áááááááºá¡áá±ážááŒá®ážáá«ááẠ- host ááŸáá·áº container ááẠsingle core áá áºáá¯ááŒá áºááŒá®áž malware ááᯠcontainer ááŸááœááºááŒá±á¬ááºáááºááœáá·áºááŒá¯ááá¯ááºááá·áºá¡á¬ážáááºážáá»ááºáá áºáá¯ááŒá áºáááºá áá¶ááááŸááá±á¬áá±á¬á·ááºáá²ááºááᯠá ááºážáááºáá±á¬á¡áá«á ááá¯ááá¯ááá·áºáá»á±á¬áºáá±á¬ áá®ážááŒá¬ážááœá²áá¯ááºááŒááºáž ááá¹ááá¬ážáá»á¬ážááᯠá¡áá¯á¶ážááŒá¯ááŒááºážááẠááá¯áá±á¬ááºážáá«áááºá
á¡áá¯á¶ážáááºáá±á¬ááá·áºáá»á¬áž
- Habré á Capacious áá±á¬ááºážáá«áž
LXD - Linux ááœááºááááºáá¬á áá áºáá»á¬ážá á¡ááŒá±áá¶á¡ááºá¹áá«áááºáá»á¬áž ÐПÑÑал пÑПекÑа LXD LXD ááŸáá·áº LXC ááᯠááá±á¬ááœá±ážááẠá¡áá±ážááŒá®ážááẠ- áááºážááá¯á·ááẠááœá²ááŒá¬ážáá±á¬áºáááºáž á¡ááŒááºá¡ááŸááºáááºá ááºáá±ááá·áºá¡áá¬áá»á¬ážááŒá áºáááºáááá±á¬á· Simos Xenitellis â á€ááá±á¬á·ááºááœáẠLXD ááŸáá·áºáááºáááºáá±á¬ á¡áá¯á¶ážáááºáá±á¬ á¡áá»ááºá¡áááºáá»á¬ážá áœá¬ááŸááááºádeveloper áá»á¬ážá¡ááœáẠWindows 10 virtual machines áá»á¬ážá á¡áááºááá·áºáá¯ááºáá¬ážáá±á¬áá¯á¶áá»á¬áž - Microsoft ááẠáááºáá±á¬ááºááŸá¯á¡áá áºáá»á¬ážááᯠá¡áá«á¡á¬ážáá»á±á¬áºá áœá¬ á á¯áá±á¬ááºážááŒá®áž á¡áá°ážááá¯ááºá ááºááŒáá·áº áááºážááá¯á·ááᯠááŒáá·áºáá±áá«áááºá
source: www.habr.com