如何获取 LXC 容器的 IP 地址以实现自动化?

jgo*_*mo3 6 lxc lxd

如何以可以在脚本中使用的格式获取 LXC 容器的 IP 地址?

现在,该命令lxc info <container>报告该信息,但是以人类可读的格式,包含大量信息。

我只想获取给定容器名称的 IP 地址。

:我HAVE重复这个问题,因为Linux容器已经改变了很多。

安装lxd并使用非特权容器是当今(2017 年)的默认方式,我认为在原始问题上发布的解决方案在这种情况下无法解决问题。

无论如何,我安装了包lxc1来访问命令lxc-info,但该命令无法识别我的任何非特权容器。

Jon*_* Y. 5

本机解决方案(并不比@siloko 的答案更漂亮)将是

lxc list "<name>" -c 4 | awk '!/IPV4/{ if ( $2 != "" ) print $2}'
Run Code Online (Sandbox Code Playgroud)

有替代方案awk,但这与问题无关。


slo*_*wko 0

可能有点丑,但是:

lxc-info -n my-container | grep IP: | tr -d ' ' | cut -f2 -d:
Run Code Online (Sandbox Code Playgroud)

只会为您提供 IP 地址