我想获取docker主机的IP地址和接口名称,即docker主机的ifconfig。而是在docker容器中执行ifconfig时获取docker容器ip地址。
如果有人告诉我从Docker容器中获取Docker主机的IP地址,那将是很棒的事情。
我尝试做ifconfig dockerhostname, 结果我得到了错误 dockerhostmachi:获取接口信息时出错:找不到设备
这是我的dockerfile
从ubuntu:14.04
运行apt-get更新&& apt-get安装-y \ python-dev \ libffi-dev \ libssl-dev \ python枚举\ apache2 \ libapache2-mod-wsgi \ python-pip \ python-qt4
RUN chmod -R 777 /var/log/apache2/error.log
RUN chmod -R 777 /var/log/apache2/other_vhosts_access.log
RUN chmod -R 777 /var/log/apache2/access.log
RUN chmod -R 777 /var/run/apache2/
运行a2enmod wsgi
我需要从docker容器或运行docker image时获取docker主机的ifconfig结果。
答案 0 :(得分:0)
运行docker image / container时,可以使用-e参数指定环境变量。这样做可能像: docker run -e ip = docker_host_ip ...
然后它应该在容器端作为环境变量可用。
答案 1 :(得分:0)
以下问题的答案如下。
$ sudo docker network create --driver = bridge --subnet = 192.168.10.0 / 24 --gateway = 192.168.10.1 doc1net
或
$ sudo docker network创建--driver = bridge --subnet = 10.45.0.0 / 24 --gateway = 10.45.0.0 doc1net
此处的子网和网关可以是您自己的网络地址,而doc1net是我的网络名称。
2种方法
运行docker时,请与您的网络主机连接。
$ sudo docker network ls
提供您的网络列表。
$ sudo docker run -it-网络主机myimage
这里myimage是我创建的图像的名称
第二种方法对我有用。