web-dev-qa-db-ja.com

sudoとしてdockerを実行する

Boot2dockerをインストールして実行しました。

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

Dockerサイトからチュートリアルを開始しました。

私は1つのことを理解していません-実行すると:

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

ただし、Sudoなしで実行すると、機能します。

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

チュートリアルのようにSudoで実行しても機能しないのはなぜですか(少なくとも私にとって)。

12
Cris

DOCKER_Host環境変数が設定されていません。これを確認するには、次のようにします。

> env

次にSudoとして:

> Sudo env

DOCKER_Host変数を設定しないと、Dockerはデーモンに接続できません。

15
Brian Hartsock

試してください:

Sudo DOCKER_Host=$DOCKER_Host docker run

これにより、必要な環境変数をSudoで使用できるようになります。

3
lifeisfoo

Sudoでdockerコマンドを実行するときにプロファイルのDOCKER_Host変数を使用できるようにする場合は、sudoersファイルに次の行を追加できます。で開く:

Sudo visudo

追加:

Defaults        env_keep += "DOCKER_Host"
2
surajz

Boot2dockerを使用している場合は、/Applicationフォルダーに移動してコマンドを実行します

$(boot2docker shellinit)

環境内のDOCKER_Host変数を修正します。

1
smirnoffs

環境変数の設定DOCKER_Hostからtcp://192.168.59.103:2375は私のために働きます。

最も簡単な方法は、これをコマンドラインで実行することです(OSX/Unix/Linuxマシンの場合):

export DOCKER_Host=tcp://192.168.59.103:2375
0
Ardy Dedase