如何访问 mongodb 已部署的 insde lxc 容器
how to access mongodb deployed insde lxc container
一直在玩lxc-lxd。我能够在 lxc 容器 (ubuntu 15.04) 中安装 mongodb。我能够从容器内访问所有内容,但反之则不行。容器和 lxc-bridge 被赋予 10.x.x.x IP 地址,而我的网络路由器 IP 地址以 192.x.x.x 开头。如何从容器外部(以及主机外部)访问 mongodb。我计划为 nginx 和 node.js 创建更多的容器,因此主机传递可能不是一个选项。
我的 Ubuntu 主机 运行 在 virtualbox VM 中,希望这不会导致问题。
首先按照这里的说明创建一个桥https://wiki.debian.org/LXC/SimpleBridge
我的界面显示的是 em1 而不是 eth0,因此请务必将 eth0 替换为您得到的任何内容。
# Comment out the following:
# The primary network interface
#allow-hotplug eth0
#iface eth0 inet dhcp
auto br0
iface br0 inet dhcp
bridge_ports eth0
bridge_fd 0
bridge_maxwait 0
然后使用配置文件创建容器:
lxc profile create bridged
lxc profile device add bridged eth0 nic nictype=bridged parent=br0
lxc launch ubuntu/vivid test --profile=bridged
再次用你得到的任何东西替换 eth0,我认为这是多余的,因为我们已经有一个名为 br0 的网桥,事实上我是按相反的顺序做的。创建了配置文件和容器,但出现以下错误:
Error calling 'lxd forkstart db01 /var/lib/lxd/containers /var/log/lxd/db01/lxc.conf': err='exit status 1'
通过如上所述创建桥解决了这个问题。
一直在玩lxc-lxd。我能够在 lxc 容器 (ubuntu 15.04) 中安装 mongodb。我能够从容器内访问所有内容,但反之则不行。容器和 lxc-bridge 被赋予 10.x.x.x IP 地址,而我的网络路由器 IP 地址以 192.x.x.x 开头。如何从容器外部(以及主机外部)访问 mongodb。我计划为 nginx 和 node.js 创建更多的容器,因此主机传递可能不是一个选项。
我的 Ubuntu 主机 运行 在 virtualbox VM 中,希望这不会导致问题。
首先按照这里的说明创建一个桥https://wiki.debian.org/LXC/SimpleBridge
我的界面显示的是 em1 而不是 eth0,因此请务必将 eth0 替换为您得到的任何内容。
# Comment out the following:
# The primary network interface
#allow-hotplug eth0
#iface eth0 inet dhcp
auto br0
iface br0 inet dhcp
bridge_ports eth0
bridge_fd 0
bridge_maxwait 0
然后使用配置文件创建容器:
lxc profile create bridged
lxc profile device add bridged eth0 nic nictype=bridged parent=br0
lxc launch ubuntu/vivid test --profile=bridged
再次用你得到的任何东西替换 eth0,我认为这是多余的,因为我们已经有一个名为 br0 的网桥,事实上我是按相反的顺序做的。创建了配置文件和容器,但出现以下错误:
Error calling 'lxd forkstart db01 /var/lib/lxd/containers /var/log/lxd/db01/lxc.conf': err='exit status 1'
通过如上所述创建桥解决了这个问题。