LXC: различия между версиями
м (+заметки на манжетах) |
м (+диагностика) |
||
Строка 19: | Строка 19: | ||
# lxc-create -t local -n ''alt-p10-test'' -B dir -- --fstree ''lxc-sysvinit-etcnet-20240205-x86_64.tar.xz'' --metadata metadata.tar.xz | # lxc-create -t local -n ''alt-p10-test'' -B dir -- --fstree ''lxc-sysvinit-etcnet-20240205-x86_64.tar.xz'' --metadata metadata.tar.xz | ||
Запуск | Запуск: | ||
# lxc-start -n ''alt-p10-test'' | # lxc-start -n ''alt-p10-test'' | ||
Строка 70: | Строка 70: | ||
nameserver 10.0.0.1 | nameserver 10.0.0.1 | ||
nameserver 10.0.0.254 | nameserver 10.0.0.254 | ||
=== диагностика === | |||
Проблемы запуска контейнера: | |||
# lxc-start -F --logpriority DEBUG -n ''alt-p10-test'' | |||
При отказе запуска и диагностике вида: | |||
lxc-start: alt-p10-test: ../src/lxc/conf.c: lxc_setup_dev_console: 2028 Read-only file system - Failed to change console mode | |||
lxc-start: alt-p10-test: ../src/lxc/conf.c: lxc_setup_console: 2188 Read-only file system - Failed to setup console | |||
lxc-start: alt-p10-test: ../src/lxc/conf.c: lxc_setup: 4474 Failed to setup console | |||
lxc-start: alt-p10-test: ../src/lxc/start.c: do_start: 1272 Failed to setup container "alt-p10-test" | |||
проверьте, что никакая дрянь из состава lxc не испортила режим монтирования {{path|/dev}} или {{path|/dev/pts}}: | |||
# mount | grep /dev | |||
и при необходимости исправьте: | |||
# mount -o remount,rw /dev/pts | |||
== Ссылки == | == Ссылки == |
Версия от 14:27, 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
Запуск:
# 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
диагностика
Проблемы запуска контейнера:
# lxc-start -F --logpriority DEBUG -n alt-p10-test
При отказе запуска и диагностике вида:
lxc-start: alt-p10-test: ../src/lxc/conf.c: lxc_setup_dev_console: 2028 Read-only file system - Failed to change console mode lxc-start: alt-p10-test: ../src/lxc/conf.c: lxc_setup_console: 2188 Read-only file system - Failed to setup console lxc-start: alt-p10-test: ../src/lxc/conf.c: lxc_setup: 4474 Failed to setup console lxc-start: alt-p10-test: ../src/lxc/start.c: do_start: 1272 Failed to setup container "alt-p10-test"
проверьте, что никакая дрянь из состава lxc не испортила режим монтирования /dev или /dev/pts:
# mount | grep /dev
и при необходимости исправьте:
# mount -o remount,rw /dev/pts
Ссылки
- lxc — нативные контейнеры Linux
- Infrastructure for container projects
- LXC on help.ubuntu.com
- LXC
- LXC: Kонтейнерные утилиты Linux
- Installing lxc-containers on Fedora hosts
- LXC on wiki xgu.ru
- LXC — Gentoo Wiki
- Управление контейнерами с LXD