El nombre de dominio no se puede resolver en el contenedor de Docker: falla temporal en la resolución de nombres

Solución

Nota: mi entorno operativo es CentOS 8 y los comandos que se usan en CentOS 7 son exactamente los mismos. Los comandos de otras versiones diferentes del sistema Linux pueden ser diferentes. Utilice los comandos correspondientes de acuerdo con su propia versión del sistema y podrá operar directamente en Baidu.

1. Verifique la configuración de la red del host.

1. Verifique la configuración de la red del host

cat /proc/sys/net/ipv4/ip_forward

Si devuelve 0, significa que no está abierto y el reenvío de direcciones IP está activado:

vi /etc/sysctl.conf

Abra el archivo de configuración del núcleo, búsquelo net.ipv4.ip_forward = 0y modifíquelo a net.ipv4.ip_forward = 1, si existe al principio de la línea #, elimínelo; si no hay ningún elemento en el archivo de configuración, agregue este contenido al final del archivo.

 Después de guardar los cambios, reinicie el sistema o ingrese el siguiente comando para que los cambios surtan efecto:

sysctl -p /etc/sysctl.conf
systemctl restart network

Compruebe si el problema está resuelto, si no, vaya al siguiente paso.

2. Verifique la configuración del servidor de seguridad del host

Compruebe el estado del cortafuegos (si el cortafuegos está cerrado, puede omitir la configuración relacionada del cortafuegos):

sudo firewall-cmd --state

Si devuelve runging, el cortafuegos está habilitado. Compruebe si el cortafuegos ha habilitado el reenvío de direcciones IP (enmascaramiento de direcciones IP):

sudo firewall-cmd --query-masquerade

Si regresa no, ingrese el siguiente comando para habilitar el reenvío de direcciones IP:

sudo firewall-cmd --add-masquerade --permanent

Luego ingrese el siguiente comando para que los cambios surtan efecto:

sudo firewall-cmd --reload

Verifique nuevamente para ver si el problema se resolvió y, de no ser así, continúe con la investigación.

3. Configure Docker para especificar el servidor DNS

Abra el archivo de configuración relacionado con Docker (en el host), cree uno nuevo si no hay nadie, ingrese el siguiente comando para abrir o crear uno nuevo automáticamente:

vi /etc/docker/daemon.json

Ingrese lo siguiente en el archivo:

{
	"dns": ["8.8.8.8","114.114.114.114"]
}

Luego reinicie Docker:

systemctl restart docker

Supongo que te gusta

Origin blog.csdn.net/qq_52385631/article/details/131603979
Recomendado
Clasificación