Je voudrais savoir comment obtenir les détails de la machine hôte, en particulier l'adresse MAC depuis l'intérieur du conteneur Docker.Accéder aux détails de la machine hôte depuis l'intérieur du conteneur Docker
Répondre
Cela dépendra de votre système hôte, puisque vous ne donnez aucune information que je vais juste prendre CentOS
Dans ce article il montre comment vous pouvez obtenir cette information de/prouver sur le système hôte . Donc, si vous montez/prouver dans votre conteneur, vous devriez être capable de lire le bon fichier et sortir vos informations.
Cela ne semble pas sécurisé, et je le déconseille.
Vous avez beaucoup d'options.
est l'option Аnother
docker run -it -v /var/log/:/log --name vmaccess busybox /bin/sh
grep eth0 /log/dmesg
[ 2.307760] e1000 0000:00:03.0 eth0: (PCI:33MHz:32-bit) 08:00:27:98:dc:aa
[ 2.307783] e1000 0000:00:03.0 eth0: Intel(R) PRO/1000 Network Connection
[ 4.186427] IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready
[ 8.985277] IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready
Peut-être que vous pouvez aborder ce problème de manière différente. Par exemple. transmettre les informations dont vous avez besoin de l'hôte au conteneur via des variables d'environnement. Cela nécessite de changer la façon dont vous exécutez un conteneur, mais c'est probablement la méthode la plus propre à résoudre ce problème.
Une autre façon est d'utiliser --net=host
lors du démarrage du conteneur.
$# ifconfig -a | grep -Po 'HWaddr \K.*$'
00:00:00:00:00:00
9c:b6:54:1d:80:4b
48:5a:b6:67:9e:11
$# docker run --net=host -it ubuntu:14.04 bash
$# ifconfig -a | grep -Po 'HWaddr \K.*$'
00:00:00:00:00:00
9c:b6:54:1d:80:4b
48:5a:b6:67:9e:11