Linux   发布时间:2022-04-01  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了linux – 如何在Docker中使用容器的内部ip地址作为环境变量大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

概述

我正在尝试将docker容器的IP地址作为容器中的环境变量.这是我尝试过的: 启动容器时 docker run -dPi -e ip=`hostname -i` myDockerImage 当容器已经启动时 docker exec -it myDockerImage bash -c "export ip=`hostname -i`" 这两种方法的问题在于它使用运行命令的主机的ip地址,而不是运行它
我正在尝试将docker容器的IP地址作为容器中的环境变量.这是我尝试过的:

启动容器时

docker run -dPi -e ip=`hostname -i` myDockerImage

当容器已经启动时

docker exec -it myDockerImage bash -c "export ip=`hostname -i`"

这两种方法的问题在于它使用运行命令的主机的ip地址,而不是运行它的docker容器.

那么我在docker容器中创建了一个如下所示的脚本:

#!/bin/bash
export ip=`hostname -i`
echo $ip

然后运行它

docker exec -it myDockerImage bash -c ". ipVariableScript.sh"

当我@L_406_2@my_cmd(在我的情况下是bash)到脚本的末尾时,它可以在一个bash会话中工作.我以后不能在我需要它的文件中使用它.我需要将它设置为环境变量,而不是作为一个会话的变量.

所以我已经用’.’来源了它.但是当我在容器中时,它仍然不会回响.如果我在脚本中放入echo $ip,它将为我提供正确的IP地址.但只能在正在设置的脚本中使用.

解决方法

Docker中的服务名称更可靠,更易于使用.但是,这是

如何将Docker来宾IP分配给guest中的环境var

$docker run -it ubuntu bash -c 'IP=$(hostname -i); echo ip=$IP'
ip=172.17.0.76

大佬总结

以上是大佬教程为你收集整理的linux – 如何在Docker中使用容器的内部ip地址作为环境变量全部内容,希望文章能够帮你解决linux – 如何在Docker中使用容器的内部ip地址作为环境变量所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。