Con la base ubuntu:12.04
, ifconfig
no está disponible en el contenedor, aunque el ip
el comando está disponible, ¿por qué es esto? y, cómo llegar ifconfig
en el recipiente?
Puede instalar ifconfig con apt-get install net-tools
. (Específicamente, al agregar RUN apt-get install -y net-tools
a su Dockerfile.)
Según mi prueba, ifconfig está incluido en ubuntu: 14.04.
A menos que y hasta que pueda instalar net-tools, no hay necesidad de darlo por defecto. Además, si desea ver la dirección IP, hay otro comando disponible por docker:-
docker inspect <container_name or container_id>
inspección de docker sintaxis: docker inspect [OPTIONS] NAME|ID [NAME|ID...]
Este cmd le mostrará todos los detalles del contenedor en ejecución, incluida la dirección IP.
También tropecé con esta molestia, pero como Devendra escribió en inspección de docker puede obtener todos los detalles sobre el contenedor sin net-tools
. En mi caso, necesitaba el contenedor IP.To extraiga la IP que puede usar:
docker inspect <container-id> \ | grep "\"IPAddress\"" -m 1 \ | grep -o '[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}'
EDITAR notación aún más corta para obtener la IP del contenedor (ver ejemplos de docker inspect):
docker inspect --format='{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' <container-id-or-name>
Puedes instalarlo usando
apt-get install net-tools
o si está utilizando redhut linux, instálelo con el administrador de paquetes yum
yum install net-tools
Consulte Linux Networking - “ip X” en lugar de ifconfig/route/etc? y ¿ Debería dejar de usar Ifconfig?
¿Los desarrolladores siguen vivos? Esto quedó en desuso hace años.
“Algunos programas” y “hay un error”: ¿puede ser más específico?
Soy consciente de que` ifconfig ’ está en desuso de alguna manera, pero algunos programas aún dependen de él.
Hay un error al usar ’ ip ’ en la versión actual del software. Necesito una solución rápida al problema.