Il problema
Quando si tenta di cercare le immagini della finestra mobile nel repository della finestra mobile, restituisce l'errore di seguito:
# docker search centos Error response from daemon: Get https://index.docker.io/v1/search?q=oracle%2A: dial tcp 52.72.231.247:443: getsockopt: no route to host
La finestra mobile è che il motore funziona correttamente.
# systemctl status docker ● docker.service - Docker Application Container Engine Loaded: loaded (/usr/lib/systemd/system/docker.service; enabled; vendor preset: disabled) Active: active (running) since Sat 2017-11-18 06:37:54 UTC; 4min 54s ago Docs: https://docs.docker.com Main PID: 1109 (dockerd) Memory: 72.6M CGroup: /system.slice/docker.service ├─1109 /usr/bin/dockerd └─1127 docker-containerd -l unix:///var/run/docker/libcontainerd/docker-containerd.sock --metrics-interval=0 --start-timeout 2m --state-dir /var/...
Inoltre, SELinux è impostato in modalità Permissiva e iptables può avere traffico Docker.
# iptables -L Chain INPUT (policy ACCEPT) target prot opt source destination Chain FORWARD (policy DROP) target prot opt source destination DOCKER-USER all -- anywhere anywhere DOCKER-ISOLATION all -- anywhere anywhere ACCEPT all -- anywhere anywhere ctstate RELATED,ESTABLISHED DOCKER all -- anywhere anywhere ACCEPT all -- anywhere anywhere ACCEPT all -- anywhere anywhere Chain OUTPUT (policy ACCEPT) target prot opt source destination Chain DOCKER (1 references) target prot opt source destination Chain DOCKER-ISOLATION (1 references) target prot opt source destination RETURN all -- anywhere anywhere Chain DOCKER-USER (1 references) target prot opt source destination RETURN all -- anywhere anywhere
# sestatus SELinux status: enabled SELinuxfs mount: /sys/fs/selinux SELinux root directory: /etc/selinux Loaded policy name: targeted Current mode: permissive Mode from config file: enforcing Policy MLS status: enabled Policy deny_unknown status: allowed Max kernel policy version: 28
Abilitazione proxy per Docker
Affinché il nodo Docker comunichi con l'hub Docker, è necessario che il proxy sia abilitato. Questo è necessario quando si dispone di un ambiente sotto il firewall. Ci sono 2 modi per farlo.
Metodo 1
1. Per configurare le opzioni di rete del proxy Web, creare il file a discesa /etc/systemd/system/docker.service.d/http-proxy.conf che contiene le seguenti righe:
# vi /etc/systemd/system/docker.service.d/http-proxy.conf [Service] Environment="HTTP_PROXY=proxy_URL:port" Environment="HTTPS_PROXY=proxy_URL:port"
2. Sostituisci proxy_URL e porta con gli URL e i numeri di porta appropriati per il tuo proxy web.
Metodo 2
1. Apri il file /etc/sysconfig/docker utilizzando qualsiasi editor e aggiungi le due voci seguenti.
# vi /etc/sysconfig/docker HTTP_PROXY="http://[proxy_IP].domain.com:80" HTTPS_PROXY="http://http://[proxy_IP].domain.com:80"
2. Una volta completato, avviare/arrestare il servizio Docker
# systemctl stop docker # systemctl start docker