Estoy usando Fedora release 33 (Thirty Three) versión Docker version 20.10.0, build 7287ab3
Primero ejecuté la docker system prune y, desde entonces, el demonio acoplable no pudo iniciarse.
Ejecuté el comando systemctl start docker y obtuve
Job for docker.service failed because the control process exited with error code. See "systemctl status docker.service" and "journalctl -xe" for details. y luego systemctl status docker.service que obtuve
● docker.service - Docker Application Container Engine Loaded: loaded (/usr/lib/systemd/system/docker.service; enabled; vendor pr> Active: failed (Result: exit-code) since Wed 2020-12-09 11:10:58 IST; 15s > TriggeredBy: ● docker.socket Docs: https://docs.docker.com Process: 10391 ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/contai> Main PID: 10391 (code=exited, status=1/FAILURE) Dec 09 11:10:58 barad-laptop systemd[1]: docker.service: Scheduled restart job,> Dec 09 11:10:58 barad-laptop systemd[1]: Stopped Docker Application Container E> Dec 09 11:10:58 barad-laptop systemd[1]: docker.service: Start request repeated> Dec 09 11:10:58 barad-laptop systemd[1]: docker.service: Failed with result 'ex> Dec 09 11:10:58 barad-laptop systemd[1]: Failed to start Docker Application Con> Luego sudo dockerd --debug y obtuve
failed to start daemon: Error initializing network controller: Error creating default "bridge" network: Failed to program NAT chain: ZONE_CONFLICT: 'docker0' already bound to a zoneRelacionado con este problema de Github
Descubrió que
$ firewall-cmd --get-active-zones FedoraWorkstation interfaces: ens4u1u2 wlp59s0 docker interfaces: br-48d7d996793a libvirt interfaces: virbr0 trusted interfaces: docker0la interfaz docker0 parece estar en la zona de confianza . Pero hay otra zona llamada docker .
Así que decidí darle una oportunidad y agregarlo a la zona acoplable en su lugar.
$ sudo firewall-cmd --permanent --zone=docker --change-interface=docker0Se ve así después:
$ firewall-cmd --get-active-zones FedoraWorkstation interfaces: ens4u1u2 wlp59s0 docker interfaces: br-48d7d996793a docker0 libvirt interfaces: virbr0 Parece funcionar.
Tal vez alguien pueda arrojar más luz sobre esto.
Recibí este error después de actualizar docker-ce en mi Fedora 32. Parece que el nuevo docker entra en conflicto con la configuración manual del firewall mencionada en el artículo que vinculó en su respuesta. Tenía las reglas en mi máquina para habilitar la comunicación de contenedor a contenedor.
Docker comenzó con éxito después de revertir las reglas del firewall:
sudo firewall-cmd --permanent --zone=trusted --remove-interface=docker0 sudo firewall-cmd --permanent --zone=FedoraWorkstation --remove-masquerade sudo firewall-cmd --reload sudo systemctl restart dockerLos cambios no parecen afectar la capacidad de los contenedores para comunicarse entre sí.
Con un problema similar, docker0 de la zona de confianza, recargué el firewall y también daemon.json de /etc/docker
sudo firewall-cmd --get-active-zones sudo firewall-cmd --permanent --zone=trusted --remove-interface=docker0 sudo firewall-cmd --reload sudo rm -rf /etc/docker/daemon.json # or mv to another location Luego reinicie el servicio docker con sudo systemctl restart docker .