User Tools

Site Tools


технология_lxc

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
технология_lxc [2019/10/18 11:38]
val [Запуск/мониторинг/остановка контейнера]
технология_lxc [2022/07/28 12:21]
val [Технология LXC]
Line 2: Line 2:
  
   * [[http://​ru.wikipedia.org/​wiki/​LXC|LXC wiki]]   * [[http://​ru.wikipedia.org/​wiki/​LXC|LXC wiki]]
-  * [[https://help.ubuntu.com/lts/serverguide/lxc.html|Ubuntu-Руководство по Ubuntu Server-Виртуализация]]+  * [[https://wiki.debian.org/LXC|debian.org/LXC]] 
 +  * [[https://​linuxcontainers.org/​lxc/​getting-started/​|LXC Getting started]]
  
  
Line 10: Line 11:
  
 ==== Подготовка сети ==== ==== Подготовка сети ====
- 
-  * Для режима bridge в lxc понадобиться включить «**неразборчивый режим**» в адаптере 
-  * **!!!** В Debian 9 необходимо убрать из ядра [[Модуль AppArmor]] 
  
 <​code>​ <​code>​
Line 34: Line 32:
         gateway 192.168.X.1         gateway 192.168.X.1
         ​         ​
-#        ​bridge_ports eth0 +        ​bridge_ports eth0
-#        bridge_ports enp0s3+
  
 #        bridge_stp off #        bridge_stp off
Line 41: Line 38:
 #        post-up /sbin/brctl setfd br0 0 #        post-up /sbin/brctl setfd br0 0
 </​code><​code>​ </​code><​code>​
-root@server:​~#​ init 6+root@server:​~#​ init 0
 </​code>​ </​code>​
 +
 +  * Для режима bridge в lxc понадобиться включить «**неразборчивый режим**» в адаптере
  
 ==== Установка и настройка lxc ==== ==== Установка и настройка lxc ====
Line 49: Line 48:
  
 root@server:​~#​ cat /​etc/​default/​lxc root@server:​~#​ cat /​etc/​default/​lxc
 +</​code><​code>​
 +...
 +#[ ! -f /​etc/​default/​lxc-net ] || . /​etc/​default/​lxc-net
 +</​code>​
  
 +  ИЛИ
 +
 +<​code>​
 root@server:​~#​ cat /​etc/​default/​lxc-net root@server:​~#​ cat /​etc/​default/​lxc-net
 </​code><​code>​ </​code><​code>​
Line 61: Line 67:
  
 ==== Создание ветки дочерней системы ==== ==== Создание ветки дочерней системы ====
-<​code>​ 
-ubuntu# lxc-create -t ubuntu -n www 
  
 +=== Debian ===
 +<​code>​
 debian# lxc-create -t debian -n www debian# lxc-create -t debian -n www
 </​code>​ </​code>​
  
 +=== Ubuntu ===
 +<​code>​
 +ubuntu# lxc-create -t download -n www -- -d ubuntu -r focal -a amd64
 +</​code>​
 ==== Установка ПО в дочерней системе ==== ==== Установка ПО в дочерней системе ====
 <​code>​ <​code>​
 root@server:​~#​ cp /​etc/​ssh/​sshd_config /​var/​lib/​lxc/​www/​rootfs/​etc/​ssh/​sshd_config root@server:​~#​ cp /​etc/​ssh/​sshd_config /​var/​lib/​lxc/​www/​rootfs/​etc/​ssh/​sshd_config
- 
-root@server:​~#​ rm /​var/​lib/​lxc/​www/​rootfs/​etc/​resolv.conf 
  
 root@server:​~#​ cp /​etc/​resolv.conf /​var/​lib/​lxc/​www/​rootfs/​etc/​resolv.conf root@server:​~#​ cp /​etc/​resolv.conf /​var/​lib/​lxc/​www/​rootfs/​etc/​resolv.conf
Line 81: Line 89:
 www:/# apt purge isc-dhcp-client www:/# apt purge isc-dhcp-client
  
-www:/# apt purge resolvconf +www:/# apt install nano vim iputils-ping
- +
-www:/# apt install nano +
- +
-www:/# apt install ​iputils-ping+
 </​code>​ </​code>​
  
Line 99: Line 103:
 ==== Управление учетными записями в дочерней системе ==== ==== Управление учетными записями в дочерней системе ====
 <​code>​ <​code>​
-www:/# getent passwd 
- 
-ubuntu# userdel -r ubuntu 
- 
 www:/# passwd www:/# passwd
-123+... 123
  
 www:/# exit www:/# exit
Line 116: Line 116:
 </​code><​code>​ </​code><​code>​
 ... ...
-#​lxc.network.link = lxcbr0 
-... 
-# lxc.network.hwaddr = 00:​16:​3e:​5c:​c0:​fb # need comment 
-lxc.network.type = veth 
-lxc.network.flags = up 
-lxc.network.link = br0 
-lxc.network.ipv4 = 192.168.X.20/​24 
-lxc.network.ipv4.gateway = 192.168.X.1 
  
 lxc.net.0.type = veth lxc.net.0.type = veth
Line 143: Line 135:
  
 root@server:​~#​ lxc-attach -n www -- ps ax root@server:​~#​ lxc-attach -n www -- ps ax
 +  или
 +root@server:​~#​ ps -eo pid,cmd,lxc | grep www
 +
 root@server:​~#​ lxc-attach -n www -- /bin/bash root@server:​~#​ lxc-attach -n www -- /bin/bash
  
Line 151: Line 146:
 root@server:​~#​ systemctl start lxc@www root@server:​~#​ systemctl start lxc@www
  
- 
-debian9# systemctl edit lxc@server 
- 
-  или 
- 
-debian9# mkdir /​etc/​systemd/​system/​lxc@www.service.d/​ 
-debian9# cat /​etc/​systemd/​system/​lxc@www.service.d/​kill_signal_fix.conf 
-</​code><​code>​ 
-[Service] 
-KillSignal=SIGRTMIN+3 
-</​code><​code>​ 
 root@server:​~#​ systemctl stop lxc@www root@server:​~#​ systemctl stop lxc@www
 </​code>​ </​code>​
технология_lxc.txt · Last modified: 2022/07/28 12:21 by val