Π˜Π·ΠΎΠ»ΡΡ†ΠΈΡ срСд Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΎΠ² LXD

Π― расскаТу ΠΎ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄Π΅ ΠΊ ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹Ρ… ΠΈΠ·ΠΎΠ»ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… срСд Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π½Π° своСй Ρ€Π°Π±ΠΎΡ‡Π΅ΠΉ станции. ΠŸΠΎΠ΄Ρ…ΠΎΠ΄ Π±Ρ‹Π» Π²Ρ‹Ρ€Π°Π±ΠΎΡ‚Π°Π½ ΠΏΠΎΠ΄ воздСйствиСм ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΎΠ²:

  • для Ρ€Π°Π·Π½Ρ‹Ρ… языков Π½ΡƒΠΆΠ½Ρ‹ Ρ€Π°Π·Π½Ρ‹Π΅ IDE ΠΈ Ρ‚ΡƒΠ»Ρ‡Π΅ΠΉΠ½Ρ‹;
  • Π² Ρ€Π°Π·Π½Ρ‹Ρ… ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°Ρ… ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ Ρ€Π°Π·Π½Ρ‹Π΅ вСрсии Ρ‚ΡƒΠ»Ρ‡Π΅ΠΉΠ½ΠΎΠ² ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ.

ΠŸΠΎΠ΄Ρ…ΠΎΠ΄ Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ вСсти Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΡƒ Π²Π½ΡƒΡ‚Ρ€ΠΈ LXD ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΎΠ² Π·Π°ΠΏΡƒΡ‰Π΅Π½Π½Ρ‹Ρ… локально Π½Π° Π½ΠΎΡƒΡ‚Π±ΡƒΠΊΠ΅ ΠΈΠ»ΠΈ Ρ€Π°Π±ΠΎΡ‡Π΅ΠΉ станции с ΠΏΠ΅Ρ€Π΅Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ Π²Ρ‹Π²ΠΎΠ΄Π° Π³Ρ€Π°Ρ„ΠΈΠΊΠΈ Π² хост.

ΠšΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΡ Π½Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ Ubuntu 20.04.

Π Π°Π·ΠΌΡ‹ΡˆΠ»Π΅Π½ΠΈΡ ΠΎ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Π°Ρ… ΠΈ ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π°Ρ… ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Ρ‹ Π² ΠΊΠΎΠ½Ρ†Π΅ ΡΡ‚Π°Ρ‚ΡŒΠΈ.

1. Установка LXD

Π’ Ubuntu 20.04 LXD большС Π½Π΅ доступСн для установки ΠΊΠ°ΠΊ deb ΠΏΠ°ΠΊΠ΅Ρ‚, Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‡Π΅Ρ€Π΅Π· snap:

$ snap install lxd

ПослС установки Π½ΡƒΠΆΠ½ΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΡŽ:

$ lxd init

ЕдинствСнный ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ я мСняю, это storage bakend β€” я ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽ dir ΠΊΠ°ΠΊ самый простой. Π’Π°ΠΊ ΠΊΠ°ΠΊ снимки ΠΈ ΠΊΠΎΠΏΠΈΠΈ я Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽ, Ρ‚ΠΎ прСдупрСТдСния Π² Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ мСня Π½Π΅ ΠΏΡƒΠ³Π°ΡŽΡ‚:

Similarly, the directory backend is to be considered as a last resort option.
It does support all main LXD features, but is terribly slow and inefficient as it can’t perform
instant copies or snapshots and so needs to copy the entirety of the instance’s storage every time.

2. Настройка профиля LXD

ΠŸΡ€ΠΎΡ„ΠΈΠ»ΠΈ Π² 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

Π― ΠΏΡ€Π΅Π΄ΠΏΠΎΡ‡ΠΈΡ‚Π°ΡŽ ΠΎΠ±Ρ€Π°Π·Ρ‹ ΠΈΠ· рСпозитория https://images.linuxcontainers.org, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ Π² Π½ΠΈΡ… мСньшС прСдустановлСнного софта. По этой ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π΅ я Π΄ΠΎΠ±Π°Π²ΠΈΠ» прСфикс images: ΠΊ ΠΈΠΌΠ΅Π½ΠΈ ΠΎΠ±Ρ€Π°Π·Π°. Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π° Π½Π° Π±Π°Π·Π΅ ΠΎΠ±Ρ€Π°Π·Π° ΠΈΠ· рСпозитория Ubuntu ΠΌΠΎΠΆΠ½ΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ: $ lxc launch ubuntu/20.04 dev1.

Доступ ΠΊ Ρ€ΡƒΡ‚ΠΎΠ²ΠΎΠΌΡƒ ΡˆΠ΅Π»Ρƒ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°:

$ lxc exec dev1 -- bash

Π£ΡΡ‚Π°Π½ΠΎΠ²Π»ΡŽ Firefox ΠΈ VS Code (ΠΈΠ· рСпозитория ΠΏΠΎ инструкции):

$ 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 Π² ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ для Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ запускаСмыС Π² Π½Π΅ΠΌ прилоТСния ΠΌΠΎΠ³Π»ΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ графичСской ΠΊΠ°Ρ€Ρ‚ΠΎΠΉ. Для этого Π½ΡƒΠΆΠ½ΠΎ:

  • Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ устройство $ lxc config device add dev1 mygpu gpu;
  • ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Π² ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π΅ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Ρ‹ Π²ΠΈΠ΄Π΅ΠΎΠΊΠ°Ρ€Ρ‚Ρ‹ β€” Ρ‚Π΅ ΠΆΠ΅ самыС, Ρ‡Ρ‚ΠΎ установлСн Π½Π° хостС.

4. ИспользованиС ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°

Π’ Ρ‚ΠΎΠΌ случаС, Ссли ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ Π΅Ρ‰Π΅ Π½Π΅ Π·Π°ΠΏΡƒΡ‰Π΅Π½, Π½ΡƒΠΆΠ½ΠΎ Π΅Π³ΠΎ Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ:

lxc start dev1

Запуск VS Code ΠΎΡ‚ ΠΈΠΌΠ΅Π½ΠΈ Π½Π΅ ΠΏΡ€ΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ ubuntu:

lxc exec dev1 -- sudo --login --user ubuntu code

Запуск Firefox:

lxc exec dev1 -- sudo --login --user ubuntu firefox

Окна ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π±ΡƒΠ΄ΡƒΡ‚ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Ρ‚ΡŒΡΡ Π½Π° хостС, Π½ΠΎ ΠΏΡ€ΠΈ этом Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒΡΡ ΠΎΠ½ΠΈ Π±ΡƒΠ΄ΡƒΡ‚ Π²Π½ΡƒΡ‚Ρ€ΠΈ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π° β€” ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎ пробросу Π³Ρ€Π°Ρ„ΠΈΠΊΠΈ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ssh.

Π― Π½Π΅ Π²Ρ‹ΠΊΠ»ΡŽΡ‡Π°ΡŽ Π·Π°ΠΏΡƒΡ‰Π΅Π½Π½Ρ‹Ρ… ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΎΠ² Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ Π½Π΅ Π²ΠΈΠΆΡƒ Π² этом особого смысла β€” ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡ΠΈΠ²Π°ΡŽΡΡŒ Π·Π°ΠΊΡ€Ρ‹Ρ‚ΠΈΠ΅ΠΌ ΠΎΠΊΠΎΠ½ Π·Π°ΠΏΡƒΡ‰Π΅Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ.

5. Π—Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅

Π― ΠΏΡ€Π΅Π΄ΠΏΠΎΡ‡ΠΈΡ‚Π°ΡŽ Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ…ΠΎΡΡ‚ΠΎΠ²ΡƒΡŽ ОБ для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ это ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΎΠ²Π°Π»ΠΎ Π±Ρ‹ установки инструмСнтов Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ, ΠΎΡ‚Π»Π°Π΄ΠΎΡ‡Π½Ρ‹Ρ… вСрсий Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ, настройки ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ² систСмы спСцифичСским ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΡ… манипуляций. ВсС это ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ΡŒ ΠΊ Π½Π΅ΠΎΠΆΠΈΠ΄Π°Π½Π½ΠΎΠΌΡƒ повСдСнию ΠΎΡΡ‚Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ, Π½Π΅ связанного с Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΎΠΉ, ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния, Π° Ρ‚ΠΎ ΠΈ всСй ОБ. К ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρƒ измСнСния Π² ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ OpenSSL ΠΌΠΎΠ³ΡƒΡ‚ привСсти ΠΊ Ρ‚ΠΎΠΌΡƒ, Ρ‡Ρ‚ΠΎ ОБ пСрСстанСт ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎ Π·Π°ΠΏΡƒΡΠΊΠ°Ρ‚ΡŒΡΡ.

Π― ΠΏΡ€ΠΎΠ±ΠΎΠ²Π°Π» Ρ€Π°Π·Π½Ρ‹Π΅ срСдства для изоляции срСд Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ:

  • Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹Π΅ ΠΌΠ°ΡˆΠΈΠ½Ρ‹ (KVM, VirtualBox ΠΈ Ρ‚.ΠΏ.) β€” самый ΠΎΡ‡Π΅Π²ΠΈΠ΄Π½Ρ‹ΠΉ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚, Π½ΠΎ потрСбляСт Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ большС рСсурсов, хотя для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΠΎΠ΄ Windows (Π² Ρ‚ΠΎΠΌ случаС, Ссли хост Linux) Π΄Ρ€ΡƒΠ³ΠΈΡ… Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ² Π½Π΅Ρ‚;
  • инструмСнты ΠΎΠ±Π»Π°Ρ‡Π½ΠΎΠΉ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π·Π°ΠΏΡƒΡ‰Π΅Π½Π½Ρ‹Π΅ Π½Π° локальной машинС (Cloud9 Π² ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π΅ ΠΈΠ»ΠΈ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠΉ машинС, Eclipse Che ΠΈ Ρ‚.ΠΏ.) β€” ΠΈΡ… Ρ€Π°Π·Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°ΡŽΡ‚ Π½Π΅ для Ρ‚Π°ΠΊΠΎΠ³ΠΎ Ρ€Π΅ΠΆΠΈΠΌΠ° Ρ€Π°Π±ΠΎΡ‚Ρ‹, ΠΎΠ½ΠΈ Ρ‚Ρ€Π΅Π±ΡƒΡŽΡ‚ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ настройки ΠΈ сопровоТдСния, Π»ΡƒΡ‡ΡˆΠ΅ всСго ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΈΡ… ΠΏΠΎ Π½Π°Π·Π½Π°Ρ‡Π΅Π½ΠΈΡŽ β€” Π² ΠΎΠ±Π»Π°ΠΊΠ΅;
  • ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Ρ‹ Docker β€” ΠΎΠΏΡΡ‚ΡŒ ΠΆΠ΅ ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Ρ‹ для Π΄Ρ€ΡƒΠ³ΠΎΠ³ΠΎ, Π½Π° ΠΌΠΎΠΉ взгляд Π² Π½ΠΈΡ… Π½Π΅ ΠΎΡ‡Π΅Π½ΡŒ ΡƒΠ΄ΠΎΠ±Π½ΠΎ быстро ΠΏΡ€ΠΎΡ‚ΠΎΡ‚ΠΈΠΏΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ с ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ΠΌ Ρ‚ΠΎΠ³ΠΎ ПО, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π΅Ρ‰Π΅ Π½Π΅ ΡƒΠΏΠ°ΠΊΠΎΠ²Π°Π½ΠΎ Π² ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Ρ‹.

Π’Ρ‹Π±Ρ€Π°Π½Π½Ρ‹ΠΉ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ ΠΈΠΌΠΏΠΎΠ½ΠΈΡ€ΡƒΠ΅Ρ‚ ΠΌΠ½Π΅ простотой ΠΈ Π½ΠΈΠ·ΠΊΠΈΠΌ ΠΏΠΎΡ€ΠΎΠ³ΠΎΠΌ вхоТдСния. Π’ самих ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°Ρ… ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡ‚ΡŒ спСцифичныС для ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ² ΠΏΠΎΠ΄Ρ…ΠΎΠ΄Ρ‹: ΡƒΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°Ρ‚ΡŒ ΠΈ Π½Π°ΡΡ‚Ρ€Π°ΠΈΠ²Π°Ρ‚ΡŒ всС Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ, Π»ΠΈΠ±ΠΎ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡ‚ΡŒ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·Π°Ρ†ΠΈΡŽ (Puppet, Ansible ΠΈ Ρ‚.ΠΏ.), Π΄Π°ΠΆΠ΅ Ρ€Π°Π·Π²ΠΎΡ€Π°Ρ‡ΠΈΠ²Π°Ρ‚ΡŒ инфраструктуру Π½Π° Π±Π°Π·Π΅ Docker. Π― ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Ρ‹ LXD Ρ‚Π°ΠΊ ΠΆΠ΅ для запуска спСцифичСского ПО ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π»ΠΈΠ±ΠΎ Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ установки большого количСства зависимостСй, Π»ΠΈΠ±ΠΎ Π΄Ρ€ΡƒΠ³ΠΎΠΉ вСрсии ОБ β€” Π² этом случаС ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ с Π½ΡƒΠΆΠ½ΠΎΠΉ вСрсиСй ОБ ΠΊ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρƒ $ lxc launch images:ubuntu/16.04 dev16.

Π’Π°ΠΆΠ½ΠΎ ΠΏΠΎΠΌΠ½ΠΈΡ‚ΡŒ ΠΎ Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ Π² Ρ€Π°Π·Ρ€Π΅Π·Π΅ изоляции контСйнСризация ΠΈΠΌΠ΅Π΅Ρ‚ Π±ΠΎΠ»ΡŒΡˆΡƒΡŽ ΠΏΠΎΠ²Π΅Ρ€Ρ…Π½ΠΎΡΡ‚ΡŒ Π°Ρ‚Π°ΠΊΠΈ ΠΏΠΎ ΡΡ€Π°Π²Π½Π΅Π½ΠΈΡŽ с Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠ΅ΠΉ β€” хост ΠΈ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ дСлят ΠΎΠ΄Π½ΠΎ ядро, ΡƒΡΠ·Π²ΠΈΠΌΠΎΡΡ‚ΡŒ Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚ΡŒ врСдоносному ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠΌΡƒ ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡Π΅Π½ΠΈΡŽ ΡΠ±Π΅ΠΆΠ°Ρ‚ΡŒ ΠΈΠ· ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°. Для экспСримСнтов с ΡΠΎΠΌΠ½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ ПО Π»ΡƒΡ‡ΡˆΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π±ΠΎΠ»Π΅Π΅ подходящиС ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ изоляции.

ΠŸΠΎΠ»Π΅Π·Π½Ρ‹Π΅ ссылки

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ: habr.com