LXC Container作为VPS

时间:2015-03-03 20:04:15

标签: linux containers vps lxc

我一直在研究LXC容器,我想知道是否可以像普通VPS一样使用LXC容器?

我的意思是;

  1. 如何为LXC容器分配外部IP地址?
  2. 如何直接进入LXC容器?
  3. 我对LXC容器很陌生,所以请告诉我是否还有其他差异我应该知道。

2 个答案:

答案 0 :(得分:0)

lxc-create -t download -n cn_name
lxc-start -n cn_name -d
lxc-attach -n cn_name

然后在容器cn_name中安装openssh服务器,这样你就可以使用ssh然后重启它或重启ssh服务。

使世界上任何容器“服务”可用于配置从主机到容器的端口转发。

例如,如果您在容器中有Web服务器,要将端口80从主机IP 192.168.1.1转发到具有ip 10.0.3.1的容器,您可以使用下面的iptables规则。

iptables -t nat -I PREROUTING -i eth0 -p TCP -d 191.168.1.1/32 --dport 80 -j DNAT --to-destination 10.0.3.1:80

现在,容器端口80上的Web服务器将通过主机操作系统的端口80提供。

答案 1 :(得分:0)

听起来你想要的是将主机网卡连接到容器。在这种情况下,您需要做的第一件事就是创建一座桥梁。首先确保在系统上安装了bridge-utils,然后打开/ etc / networking / interfaces进行编辑并更改它:

auto eth0
iface eth0 inet dhcp

到此:

auto br0
iface br0 inet dhcp
    bridge-interfaces eth0
    bridge-ports eth0
    up ifconfig eth0 up

iface eth0 inet manual

如果您的NIC未命名为eth0,则应将eth0替换为您的NIC名称(我的名称为enp5s0)。完成更改后,您可以通过发出命令

来启动桥接
sudo ifup br0

假设一切顺利,您应该保持互联网访问,甚至您的ssh会话应该在此过程中保持在线状态。我建议您对主机进行物理访问,因为搞乱上述步骤可能会阻止主机访问Internet。您可以通过运行ifconfig并检查br0是否具有分配的IP地址来验证您的设置是否正确,而eth0则没有。

一旦完成设置,打开/etc/lxc/default.conf并更改

lxc.network.link = lxcbr0

lxc.network.link = br0

就是这样。您启动的任何容器都将自动桥接到eth0,并且将与主机在同一LAN上有效存在。此时,您可以安装ssh(如果尚未安装),并使用新分配的IP地址将ssh放入容器中。

"Converting eth0 to br0 and getting all your LXC or LXD onto your LAN"