LXC: различия между версиями

Материал из ALT Linux Wiki
м (→‎Ссылки: +wiki.gentoo.org)
м (+заметки на манжетах)
Строка 1: Строка 1:
lxc — реализация контейнеров Linux, вошедшая в ядро, начиная с 2.6.29. Смотрите также [[LXD]].
lxc — реализация контейнеров Linux, вошедшая в ядро, начиная с 2.6.29<ref>на [[эльбрус/lxc|Эльбрусе]] работает начиная с ядра 4.9.76-elbrus-def-alt1.11.8</ref>. Смотрите также [[LXD]].


По применению доступно множество материалов, рекомендуется вики [http://xgu.ru/wiki/LXC xgu.ru].
== Заметки на манжетах ==
Установка:
Установка:
  apt-get install lxc
  # apt-get install lxc
 
Проверка:
# lxc-checkconfig
 
Подготовка (единожды):
# cd /var/lib/lxc
# touch config
# tar Jcf metadata.tar.xz config
 
Создание пробного контейнера:
# cd /var/lib/lxc
# lxc-create -t local -n ''alt-p10-test'' -B dir -- --fstree ''lxc-sysvinit-etcnet-20240205-x86_64.tar.xz'' --metadata metadata.tar.xz
 
Запуск (может понадобиться сконфигурированный lxcbr0, см. ниже):
# lxc-start -n ''alt-p10-test''
 
Список:
# lxc-ls -f
 
Подключение:
# lxc-attach -n ''alt-p10-test''
 
Останов (извне; внутри должны работать команды {{cmd|shutdown}}/{{cmd|reboot}}/{{cmd|poweroff}}):
# lxc-stop -n ''alt-p10-test''
 
=== консоль ===
Вход в консоли:
# lxc-console -n ''alt-p10-test''
При диагностике вида
lxc-console: alt-p10-test: ../src/lxc/commands.c: lxc_cmd_get_tty_fd: 1200 Bad file descriptor - Denied access to tty
разрешите терминалы до (пере)запуска контейнера:
# cd /var/lib/lxc
# cat >> ''alt-p10-test''/config << EOF
lxc.pty.max = ''16''
lxc.tty.max = 1
EOF
# sed -i 's,^#1:234:,1:234:,' ''alt-p10-test''/rootfs/etc/inittab
и задайте пароль root внутри контейнера:
# lxc-attach ''alt-p10-test''
## passwd root


По применению доступно множество материалов, рекомендуется вики [http://xgu.ru/wiki/LXC xgu.ru].
=== сеть ===
==== пример конфигурации бриджа ====
 
# head /etc/net/ifaces/lxcbr0/*
==> /etc/net/ifaces/lxcbr0/ipv4address <==
10.0.0.2/24
==> /etc/net/ifaces/lxcbr0/ipv4route <==
default via 10.0.0.1
 
==> /etc/net/ifaces/lxcbr0/options <==
TYPE=bri
HOST=eth1
ONBOOT=yes
DISABLED=no
BOOTPROTO=static
BRIDGE_OPTIONS="stp_state 0"


Примечание: На [[эльбрус/lxc|Эльбрусе]] работает начиная с ядра 4.9.76-elbrus-def-alt1.11.8
==> /etc/net/ifaces/lxcbr0/resolv.conf <==
search lxc.local
domain lxc.local
nameserver 10.0.0.1
nameserver 10.0.0.254


=== Ссылки ===
== Ссылки ==
* [http://habrahabr.ru/blogs/virtualization/74808/ lxc — нативные контейнеры Linux]
* [http://habrahabr.ru/blogs/virtualization/74808/ lxc — нативные контейнеры Linux]
* [http://linuxcontainers.org/ Infrastructure for container projects]
* [http://linuxcontainers.org/ Infrastructure for container projects]
Строка 18: Строка 81:
* [http://wiki.gentoo.org/wiki/LXC LXC — Gentoo Wiki]
* [http://wiki.gentoo.org/wiki/LXC LXC — Gentoo Wiki]
* [http://habr.com/company/selectel/blog/308208/ Управление контейнерами с LXD]
* [http://habr.com/company/selectel/blog/308208/ Управление контейнерами с LXD]
== Примечания ==
<references/>


{{Category navigation|title=Виртуализация|category=Виртуализация|sortkey={{SUBPAGENAME}}}}
{{Category navigation|title=Виртуализация|category=Виртуализация|sortkey={{SUBPAGENAME}}}}
{{Category navigation|title=Системному администратору|category=Admin|sortkey={{SUBPAGENAME}}}}
{{Category navigation|title=Системному администратору|category=Admin|sortkey={{SUBPAGENAME}}}}

Версия от 14:05, 24 апреля 2024

lxc — реализация контейнеров Linux, вошедшая в ядро, начиная с 2.6.29[1]. Смотрите также LXD.

По применению доступно множество материалов, рекомендуется вики xgu.ru.

Заметки на манжетах

Установка:

# apt-get install lxc

Проверка:

# lxc-checkconfig

Подготовка (единожды):

# cd /var/lib/lxc
# touch config
# tar Jcf metadata.tar.xz config

Создание пробного контейнера:

# cd /var/lib/lxc
# lxc-create -t local -n alt-p10-test -B dir -- --fstree lxc-sysvinit-etcnet-20240205-x86_64.tar.xz --metadata metadata.tar.xz

Запуск (может понадобиться сконфигурированный lxcbr0, см. ниже):

# lxc-start -n alt-p10-test

Список:

# lxc-ls -f

Подключение:

# lxc-attach -n alt-p10-test

Останов (извне; внутри должны работать команды shutdown/reboot/poweroff):

# lxc-stop -n alt-p10-test

консоль

Вход в консоли:

# lxc-console -n alt-p10-test

При диагностике вида

lxc-console: alt-p10-test: ../src/lxc/commands.c: lxc_cmd_get_tty_fd: 1200 Bad file descriptor - Denied access to tty

разрешите терминалы до (пере)запуска контейнера:

# cd /var/lib/lxc
# cat >> alt-p10-test/config << EOF
lxc.pty.max = 16
lxc.tty.max = 1
EOF
# sed -i 's,^#1:234:,1:234:,' alt-p10-test/rootfs/etc/inittab

и задайте пароль root внутри контейнера:

# lxc-attach alt-p10-test
## passwd root

сеть

пример конфигурации бриджа

# head /etc/net/ifaces/lxcbr0/*
==> /etc/net/ifaces/lxcbr0/ipv4address <==
10.0.0.2/24

==> /etc/net/ifaces/lxcbr0/ipv4route <==
default via 10.0.0.1
==> /etc/net/ifaces/lxcbr0/options <==
TYPE=bri
HOST=eth1
ONBOOT=yes
DISABLED=no
BOOTPROTO=static
BRIDGE_OPTIONS="stp_state 0"
==> /etc/net/ifaces/lxcbr0/resolv.conf <==
search lxc.local
domain lxc.local
nameserver 10.0.0.1
nameserver 10.0.0.254

Ссылки

Примечания

  1. на Эльбрусе работает начиная с ядра 4.9.76-elbrus-def-alt1.11.8