web-dev-qa-db-ja.com

WindowsのDOCKER_Host環境変数

Windows 10マシンでDocker 1.12.0を実行しています。 Javaプログラム、依存関係マネージャとしてMaven 3.3.9を使用しています。MavenDockerプラグイン( https://github.com/fabric8io/docker- maven-plugin )。クリーンインストールで次のエラーが発生します。

[エラー]プロジェクト統合テストでゴールio.fabric8:docker-maven-plugin:0.15.16:build(docker-build-start)を実行できませんでした:ゴールio.fabric8:docker-mavenの実行docker-build-start -plugin:0.15.16:build failed:No <dockerHost>または<machine>指定、DOCKER_Host環境変数なし、読み取り/書き込み可能 '/var/run/docker.sock'なし-> [ヘルプ1]

POMファイルに次の構成オプションを指定してクリーンインストールを実行すると、

<dockerHost>tcp://0.0.0.0:2376</dockerHost>

次の結果が表示されます。

[エラー]プロジェクト統合テストで目標io.fabric8:docker-maven-plugin:0.15.16:build(docker-build-start)を実行できませんでした:Dockerアクセス​​オブジェクトを作成できません:サーバーからAPIバージョンを抽出できません https://0.0.0.0:2376 :0.0.0.0:2376 [/0.0.0.0]への接続に失敗しました:接続が拒否されました:接続-> [ヘルプ1]

私の質問:このmavenプラグインがデーモンに到達できる場所を伝えるために使用できるIPアドレスはありますか?通常のDockerコマンドは問題なく機能します。プラグインはOS Xで問題なく動作します。

13
user2969329

Windows用のDockerを備えたWindows 10では、Docker Engine APIは次の2つの場所から入手できます。

  • npipe:////./pipe/docker_engine
  • http://localhost:2375

私はlocalhostで試すことをお勧めします。

詳細はこちら: https://docs.docker.com/docker-for-windows/faqs/#/how-do-i-connect-to-the-remote-docker-engine-api

8
friism

実りのないグーグルで1日近く過ごした後、私は自分でこの解決策を見つけました。些細なことですが、それでも他の人を助けるかもしれません。

expose Docker daemon

[設定]-> [一般]の[デーモンの公開...]チェックボックスを有効にする必要があります。

4
Adriaan Koster

Mavenゴールを実行しているユーザーはdocker.sockにアクセスできないようです。エラーメッセージは、問題を解決するためにどのオプションがあるかを示しています。

番号 <dockerHost>または<machine>指定、DOCKER_Host環境変数なしおよび読み取り/書き込み可能 '/var/run/docker.sock'

最後のオプションは、ファイル権限が必要であり、Dockerマシンを作成したり、DOCKER_Hostを設定したりする必要がないため、最も簡単なオプションです。Linuxでは、docker.sockの読み取り/書き込み権限を次のように変更できます。

Sudo chmod 776 /var/run/docker.sock

Windowsではこの記事を読みます: Microsoftの記事

EclipseでWindowとMavenを使用してJavaプロジェクトをビルドしているが、引き続きエラーが発生する場合は、次の手順を実行する必要があります。

ステップ1:

[設定]-> [一般]の[Expose daemon on ...]チェックボックスを有効にする必要があります。@ Adriaan Kosterが述べました。

ステップ1で問題が解決しない場合は、

ステップ2:Eclipseを管理モードで実行します。これで問題なく動作するはずです。

0
Jeevan Timsina

誰かがスキップしたい場合fabric8 docker-maven-pluginの実行により、エラーでビルドが成功しない

指定なし、DOCKER_Host環境変数なし、読み取り/書き込み可能 '/var/run/docker.sock'または '//./pipe/docker_engine'なし、Dockerマシンなどの外部プロバイダーの設定なし

その後、これは-Ddocker.skip=truehttps://dmp.fabric8.io/#global-configuration に従って。

0
Vadzim