Menjalankan buruh pelabuhan sebagai sudo


12

Saya menginstal boot2docker dan saya berlari:

./boot2docker start
 export DOCKER_HOST=tcp://localhost:4243

Saya memulai tutorial dari situs Docker.

Saya tidak mengerti satu hal - ketika saya berlari:

sudo docker info
==>
Get http:///var/run/docker.sock/v1.11/info: dial unix /var/run/docker.sock: no such file or directory

Namun ketika saya berlari tanpa sudoitu berfungsi:

MacCris:bin cristianc$ docker info
Containers: 2
Images: 10
Storage Driver: aufs
 Root Dir: /mnt/sda1/var/lib/docker/aufs
 Dirs: 14
Execution Driver: native-0.2
Kernel Version: 3.14.1-tinycore64
Debug mode (server): true
Debug mode (client): false

Adakah ide mengapa menjalankan dengan sudo seperti dalam tutorial tidak bekerja (setidaknya untuk saya)?


2
Ini karena menggunakan sudo sedang membersihkan env Anda. Tidak perlu menggunakan sudo di sini karena Anda terhubung melalui antarmuka TCP
cpuguy83

Jawaban:


15

The DOCKER_HOSTvariabel lingkungan tidak diatur. Anda dapat mengkonfirmasi ini dengan melakukan:

> env

Kemudian sebagai sudo:

> sudo env

Tanpa DOCKER_HOSTset variabel, buruh pelabuhan tidak dapat terhubung ke daemon.


3

Mencoba:

sudo DOCKER_HOST=$DOCKER_HOST docker run

Dengan cara ini variabel lingkungan yang diperlukan akan tersedia sudo.


2

Jika Anda ingin DOCKER_HOSTvariabel dari profil Anda tersedia saat Anda menjalankan perintah buruh pelabuhan dengan sudo, maka Anda dapat menambahkan baris berikut ke sudoersfile. Buka dengan:

sudo visudo

Menambahkan:

Defaults        env_keep += "DOCKER_HOST"

1

Jika Anda menggunakan boot2docker, buka /Applicationfolder dan jalankan perintah

$(boot2docker shellinit)

Ini akan memperbaiki DOCKER_HOSTvariabel Anda di lingkungan.


0

Mengatur variabel lingkungan DOCKER_HOSTagar tcp://192.168.59.103:2375berfungsi untuk saya.

Cara tercepat akan menjalankan ini di baris perintah Anda (untuk mesin OSX / Unix / Linux):

export DOCKER_HOST=tcp://192.168.59.103:2375
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.