Soluzione semplice per me: sudo docker-compose up
AGGIORNAMENTO 2016-3-14: Ad un certo punto del processo di installazione della finestra mobile (o docker-compose?) C'è un suggerimento ed esempio per aggiungere il tuo nome utente al gruppo "docker". Ciò consente di evitare la necessità di "sudo" prima di tutti i comandi docker, in questo modo:
~ > docker run -it ubuntu /bin/bash
root@665d1ea76b8d:/# date
Mon Mar 14 23:43:36 UTC 2016
root@665d1ea76b8d:/# exit
exit
~ >
Guarda attentamente l'output dei comandi di installazione (sia docker sia la 2a installazione per docker-compose) e troverai il passaggio necessario. È anche documentato qui: https://subosito.com/posts/docker-tips/
Sudo? No!
Stanco di digitare sudo docker ogni volta che si emette un comando? Sì, c'è un modo per affrontarlo. Sebbene naturalmente la finestra mobile richieda un utente root, possiamo fornire un gruppo equivalente radice per le operazioni della finestra mobile.
È possibile creare un gruppo chiamato finestra mobile, quindi aggiungere l'utente desiderato a quel gruppo. Dopo aver riavviato il servizio docker, l'utente non dovrà digitare sudo ogni volta che eseguirà operazioni docker. Come appare sui comandi di una shell? come root, ecco qui:
> sudo groupadd docker
> sudo gpasswd -a username docker
> sudo service docker restart
Fatto!
AGGIORNAMENTO 2017-3-9
Passaggi successivi all'installazione per Linux
Questa sezione contiene procedure opzionali per la configurazione degli host Linux per funzionare meglio con Docker.
Gestisci Docker come utente non root
Il daemon docker si collega a un socket Unix anziché a una porta TCP. Per impostazione predefinita, il socket Unix è di proprietà dell'utente root e gli altri utenti possono accedervi solo tramite sudo. Il daemon docker viene sempre eseguito come utente root.
Se non vuoi usare sudo quando usi il comando docker, crea un gruppo Unix chiamato docker e aggiungi utenti ad esso. Quando il daemon docker viene avviato, rende la proprietà del socket Unix leggibile / scrivibile dal gruppo docker.
Per creare il gruppo docker e aggiungere il tuo utente:
# 1. Create the docker group.
$ sudo groupadd docker
# 2. Add your user to the docker group.
$ sudo usermod -aG docker $USER
# 3. Log out and log back in so that your group membership is re-evaluated.
# 4. Verify that you can run docker commands without sudo.
$ docker run hello-world
Questo comando scarica un'immagine di prova e la esegue in un contenitore. Quando il contenitore viene eseguito, stampa un messaggio informativo ed esce.
docker-machine
come root? Sono appena arrivato qui con lo stesso problema su Ubuntu ed erano i permessi sul socket - hasudo
fatto il trucco.