我正在尝试确定 docker 容器的内部 IP 并将其用作 yaml 配置文件中的值。确定IP的命令是;
docker inspect -f '{{range.NetworkSettings.Networks}}{{.IPAddress}}{{end}}' controller-control-plane
而且,为了就地编辑配置,我正在使用;
yq -i '.kubeslice.controller.endpoint = "https://<output_from_previous_command>:6443"' values.yaml
现在,如果我想使用第一个命令作为这样的参数;
yq '.kubeslice.controller.endpoint = "https://$(docker inspect -f '{{range.NetworkSettings.Networks}}{{.IPAddress}}{{end}}' controller-control-plane):6443"' values.yaml
然后输出没有按预期进行。
kubeslice:
controller:
loglevel: info
rbacResourcePrefix: kubeslice-rbac
projectnsPrefix: kubeslice
endpoint: https://$(docker inspect -f {{range.NetworkSettings.Networks}}{{.IPAddress}}{{end}} controller-control-plane):6443
如何正确执行此操作,以便端点获得正确的 IP 值而不是命令字符串?