LXC debian 8
Материал из support.qbpro.ru
Версия от 10:30, 7 марта 2016; imported>Supportadmin
1. В /etc/default/grub изменить параметр
GRUB_CMDLINE_LINUX="cgroup_enable=memory"
Хотя официально [1] сказано, что делать ничего не надо.
2. В /etc/sysctl.conf [2]
net.ipv4.ip_forward=1 net.ipv4.conf.all.forwarding=1 net.ipv4.conf.all.proxy_arp=1
3. grub_updare, reboot
4. В /etc/network/interfaces
#allow-hotplug eth0
#auto eth0
#iface eth0 inet static
auto br0
iface br0 inet static
address 192.168.150.30
netmask 255.255.255.0
network 192.168.150.0
broadcast 192.168.150.255
gateway 192.168.150.1
dns-nameservers 192.168.150.1
bridge_ports eth0
bridge_fd 0
bridge_maxwait 0
5. Создаем контейнер [3]
lxc-create -t debian -n nodejs
6. Сразу меняем пароль root на свой.
старт в режиме консоли (не очень удобно, точнее вообще неудобно) lxc-start -n nodejs или старт в режиме демона и присоединяется к консоли контейнера, для выхода из консоли exit lxc-start -dn nodejs lxc-attach -n nodejs
7. Конфигурируем контейнер /var/lib/lxc/nodejs/config. Обязательно обратить внимание на lxc.network.veth.pair [4] - это имя интерфейса в хост машине. Здесь про это не сказано, и работать с сетью сможет только один контейнер.
lxc.rootfs = /var/lib/lxc/nodejs/rootfs lxc.include = /usr/share/lxc/config/debian.common.conf lxc.mount = /var/lib/lxc/nodejs/fstab lxc.utsname = nodejs lxc.arch = amd64 lxc.autodev = 1 lxc.kmsg = 0 #Количество /dev/tty lxc.tty = 6 # Autostart lxc.start.auto = 1 lxc.start.delay = 5 lxc.start.order = 100 # eth0 lxc.network.type = veth lxc.network.flags = up lxc.network.link = br0 lxc.network.veth.pair= br0-2 lxc.network.name = eth0 lxc.network.hwaddr = 00:11:12:00:88:99 #mount папка на хост машине папка в контейнере, относительно хост машины #lxc.mount.entry = /home/debs /var/lib/lxc/nodejs/rootfs/home/debs none bind 0 0
8. Настраиваем сеть не через конфигурацию, а в контейнере (можно и так, и так) /var/lib/lxc/nodejs/rootfs/etc/network/interfaces
# The loopback network interface
auto lo
iface lo inet loopback
# The primary network interfac
allow-hotplug eth0
auto eth0
iface eth0 inet static
address 192.168.150.33
netmask 255.255.255.0
network 192.168.150.0
broadcast 192.168.150.255
gateway 192.168.150.1
dns-nameservers 192.168.150.1
9. Правим /var/lib/lxc/nodejs/rootfs/etc/apt/sources.list
deb http://mirror.mephi.ru/debian/ jessie main deb-src http://mirror.mephi.ru/debian/ jessie main deb http://security.debian.org/ jessie/updates main contrib deb-src http://security.debian.org/ jessie/updates main contrib # jessie-updates, previously known as 'volatile' deb http://mirror.mephi.ru/debian/ jessie-updates main contrib deb-src http://mirror.mephi.ru/debian/ jessie-updates main contrib deb http://ftp.ru.debian.org/debian/ jessie main contrib non-free deb http://http.debian.net/debian jessie-backports main contrib non-free #deb http://www.deb-multimedia.org jessie main non-free #deb http://www.deb-multimedia.org jessie-backports main
10. Изначально контейнер пустой (установлено 136 пакетов). Даже ping отсутствует.
apt-get update apt-get install aptitude mc ssh iputils-ping iptables cron wget
