web-dev-qa-db-ja.com

Docker:CA証明書を読み取れませんでした

DockerをWindows 10 Proにインストールしましたが、動作しません。

Hello-worldを実行しようとすると、

could not read CA certificate 

Machine/machines/defaultで証明書を探しています。ただし、そのフォルダーは存在しませんでした。

「default」と呼ばれるマシン(上記のフォルダーを作成)を作成しましたが、助けにはなりませんでした。

その前に、証明書を持っているように見える「dev」と呼ばれる別のマシンを作成しましたが、それも助けにはならないようです。

また、machine/machinesに証明書ファイルがあります。Dockerが(machine/machines/defaultの代わりに)そのフォルダを探すように何らかの方法でポイントする必要があるかどうかわかりませんか?

私はDockerが初めてなので、何かが足りないかもしれません。しかし、私は一日中このことに取り組んでおり、Dockerのドキュメントを読んで、多くの解決策と同様の答えを試しましたが、何も機能していないようです。

21
Polina

同じ問題がありました。問題は、Docker ToolboxからDocker for Windowsにアップグレードしたことです。 Docker Toolbox をアンインストールしても、ユーザー固有のenv変数は削除されません。以下は私のためにトリックをしました:

  1. Docker Toolboxをアンインストールします。
  2. VirtualBoxをアンインストールします(Docker ToolboxとHyper-V [Docker for Windowsで使用]が同時に必要なため、VirtualBoxは使用できません。)
  3. Docker Toolboxのenv変数を削除します:
    • Control Panel\All Control Panel Items\Systemに移動します。
    • システムの詳細設定をクリックします
    • Advancedタブに移動し、Environment Variablesをクリックします。
    • システム/ユーザー変数からすべての_DOCKER_*_エントリを削除します。
      • _DOCKER_TLS_VERIFY_
      • _DOCKER_CERT_PATH_
      • _DOCKER_Host_
      • _DOCKER_TOOLBOX_INSTALL_PATH_
  4. コマンドプロンプトまたはPowerShellからDOCKER_ *を削除します。 PowerShellで次のコマンドを実行します。

    [Environment]::SetEnvironmentVariable("DOCKER_CERT_PATH", $null, "User")

    [Environment]::SetEnvironmentVariable("DOCKER_Host", $null, "User")

    [Environment]::SetEnvironmentVariable("DOCKER_MACHINE_NAME", $null, "User")

    [Environment]::SetEnvironmentVariable("DOCKER_TLS_VERIFY", $null, "User")

    [Environment]::SetEnvironmentVariable("DOCKER_TOOLBOX_INSTALL_PATH", $null, "User")

  5. PowerShellを再起動します。 (必要に応じて、システムも再起動します。)

ソース:

58
yaya

時にはそれほどトリッキーではありません。私はこれを行うことでこの問題を解決しました:

このPCに移動します:->検索バーでca.pemと入力し、その場所に移動してコピーします->システムの詳細設定->環境変数->編集-DOCKER_CERT_PATH->そしてその場所を貼り付けますこれを実行すると実行されます

3
Nikhil Bhardwaj

環境変数を削除し、上記のコマンドを実行するとうまくいきました:

[Environment]::SetEnvironmentVariable("DOCKER_CERT_PATH", $null, "User")

[Environment]::SetEnvironmentVariable("DOCKER_Host", $null, "User")

[Environment]::SetEnvironmentVariable("DOCKER_MACHINE_NAME", $null, "User")

[Environment]::SetEnvironmentVariable("DOCKER_TLS_VERIFY", $null, "User")

[Environment]::SetEnvironmentVariable("DOCKER_TOOLBOX_INSTALL_PATH", $null, "User")
1
Divakar

ちょっと私は同様の問題を抱えている、私はこの種のエラーから始めました

' http://%2F%2F.%2Fpipe%2Fdocker_engine/v1.37/containers/create :open //./pipe/docker_engine'

その後、証明書にも問題がありました。私がやったのは、証明書ファイルの場所を別の場所に変更し、環境変数DOCKER_CERT_PATHでそれを指すようにすることでした。その後、さまざまな問題をすべて調査しましたが、最終的には部分的にしか問題を解決できませんでした。最後に、Dockerツールボックスをアンインストールし、VM Virtualboxをインストールし、インストール中にウィザードで選択できる別の古いドライバーNDIS5で再インストールしました。win10のDockerに関するすべての問題を解決しました。

Wizard during installation Docker toolbox

0
Zugbur