Docker non può caricare il file di configuration, ma il contenitore funziona bene

Sto utilizzando il dockermachine con il driver generico per distribuire i container su un host remoto esistente. Ma quando passa all'host remoto e cerco di eseguire un contenitore, questo accade:

$ docker-machine create --driver generic --generic-ip-address=$REMOTEIP \ --generic-ssh-key ~/.ssh/id_rsa --generic-ssh-user $REMOTEUSER vm [works fine] $ eval $(docker-machine env vm) #switch to remote host [works fine] $ docker run -it busybox sh WARNING: Error loading config file:/home/user/.docker/config.json - open /home/user/.docker/config.json: permission denied [Even with the warning, runs fine] 

Il contenitore funziona comunque, ma voglio risolvere questo messaggio di avviso.

Dato che l' user non esiste nell'host remoto, suppongo che questo file non esista. Ma ..

1) perché il motore cerca in primo luogo? non dovrebbe cercare il config.json di $REMOTEUSER invece di quello?

2) e perché il contenitore funziona correttamente sull'host remoto comunque?

Docker non cerca tale file nell'host remoto ma nell'host locale. Scopri che il file esiste e che è di properties; di root.

 $ ls -lsa ~/.docker/config.json 4 -rw------- 1 root root \ 95 dic 29 15:29 /home/user/.docker/config.json 

Ecco perché dice che l' permission denied .

Un semplice chown risolve il problema:

 $ sudo chown user:user /home/user/.docker -R