Quale ca.crt utilizza docker.sock per tirare docker?

Quando faccio il docker pull da dentro un contenitore che utilizza /var/run/docker.sock per eseguire docker (docker all'interno docker), ho avuto questo errore:

FATA[0000] Error response from daemon: v1 ping attempt failed with error: Get https://registry.com:5000/v1/_ping: x509: certificate has expired or is not yet valid. If this private registry supports only HTTP or HTTPS with an unknown CA certificate, please add `--insecure-registry registry.com:5000` to the daemon's arguments. In the case of HTTPS, if you have access to the registry's CA certificate, no need for the flag; simply place the CA certificate at /etc/docker/certs.d/registry.com:5000/ca.crt

Così ho seguito l'istruzione e ho aggiunto il ca.crt all'interno di quella directory e ca.crt anche aggiunto l'opzione non ca.crt a /etc/default/docker , ma l'errore non è andato via.

Mi chiedo where /var/run/docker.sock command cercare il cert quando tiro da dentro il contenitore. Soprattutto quando si tirano le opere dall'esterno (host) con la stessa configuration (ca.crt nella cartella destra e viene aggiunta l'opzione non sicura).

/var/run/docker.sock non è la cosa che sta cercando un cert. Questo è semplicemente il socket che utilizzi per comunicare con dockerd. Quando fai un tiro, chiedi al demone docker di andare a parlare con un registro.

Dove hai ottenuto il file ca.crt ? È davvero il certificato di firma per il certificato del server di registry.com:5000 ? Hai inserito in /et c/default/docker/registry.com:5000/ca.crt nell'host in cui è in esecuzione dockerd, o all'interno del contenitore?

Quello file ca.crt appartiene where il demone è in esecuzione. Doppio controllo di avere quel file corretto nel luogo corretto dell'host e che dovrebbe risolvere il problema.

Ha avuto a che fare ora, la soluzione è riavviare il demone docker all'interno del contenitore. Ho effettivamente provato prima ma il servizio docker continuato a scendere dopo il riavvio, che mi ha fatto pensare che era il servizio docker dall'host.

Il motivo per cui non riesco a riavviare il servizio docker è che esisteva /var/run/docker.pid che impedisce al docker di ricominciare. Così ho cancellato quel pid e il docker riavviato con successo.