web-dev-qa-db-ja.com

Dockerを起動しようとすると、CA証明書を読み取れませんでした

Boot2dockerからdocker-machineに移行しようとしています。

指示に従いました ここ dockerをインストールしましたが、次のメッセージが表示され続けます:

Could not read CA certificate "/Users/<useraccountfolder>/.boot2docker/certs/boot2docker-vm/ca.pem": open /Users/<useraccountfolder>/.boot2docker/certs/boot2docker-vm/ca.pem: no such file or directory

ほとんどすべてのdockerコマンドを実行したとき。

14
Naruto Sempai

私は自分の解決策を見つけました ここ

.bash_profileを次のように更新する必要がありました。

export DOCKER_Host=tcp://192.168.99.100:2376
export DOCKER_MACHINE_NAME=default
export DOCKER_TLS_VERIFY=1
export DOCKER_CERT_PATH=~/.docker/machine/machines/default

次に、以下を実行して、欠落しているca.pemを生成します。

docker-machine regenerate-certs default

これが他の誰かを助けることができる場合に備えて、私はこれを投稿しました。感謝/小道具は、1時間の苦痛の後に発見されたgithubのそのスレッドのすべての人に行きます。

23
Naruto Sempai

このガイドに従ってください: Docker forMacとDockerToolbox

私のために働いたので、Mac用に変数を作成するのではなく、変数の設定を解除する必要があります。

# grep for DOCKER ENV vars
env | grep DOCKER
unset <DOCKER_VARS>

7
Hashfyre

通常、ほとんどの人はboot2dockerと古いバージョンのvirtualboxをインストールしています。インストールガイドに記載されているように、Docker for Macをインストールする前に、boot2dockerをアンインストールし、virtualboxを高バージョンに再インストールする必要があります。 https://docs.docker.com/engine/installation/mac/#/docker-for-mac

Docker for Macをインストールしましたが、「CA証明書を読み取れませんでした」というエラーが発生しました。

私の解決策は、Docker関連の環境変数(DOCKER *)を.bash_profileから削除することです。それは長期的な解決策のようです。

  1. vim ~/.bash_profile

  2. DOCKER _ *のようなコメント

  3. source ~/.bash_profile

  4. ターミナルを再起動します。実行に問題はありません:docker infoまたはdocker ps

それが役に立てば幸い。

2
konglee28

後で削除した特定のDockerマシンに環境をセットアップしたが、環境が削除されたマシンに設定されていたため、同じエラーが発生しました。そのため、Docker呼び出しが存在しないマシンにリダイレクトされ、エラーが発生していました。

環境変数の設定を解除すると、問題が修正されました。

eval $(docker-machine env -u)

どの環境変数が設定解除されるかを確認するには、次のコマンドを実行します。

docker-machine env -u
1
HAK

ファイルがDOCKER_CERT_PATH env変数に存在する場合、ファイルのアクセス許可の問題が原因でエラーが発生する可能性もあります。このユースケースも確認してください。

0
Nikhil Katre

MacのランチパッドからのDockerは、ターミナルからのコマンドと同様に動作を停止します。それが他の誰かを助ける場合にそれが理にかなっているかどうかに関係なく、私はそれを修正するために私がしたことを言うつもりです。

  • 私は走ったunset ${!DOCKER*}
  • それから私は走った:

    export DOCKER_Host=tcp://192.168.99.100:2376
    export DOCKER_MACHINE_NAME=default
    export DOCKER_TLS_VERIFY=1
    export DOCKER_CERT_PATH=~/.docker/machine/certs/
    
  • 次に、実行しました:docker(部分的にしか機能しませんでした)

  • それから私は走った:unset ${!DOCKER*}再び
  • 次に、Launchpadからdockerを起動し、1分待ったところ、再び実行され、すべてが正常に戻りました。
0
Helzgate

~/.bash_profileまたは~/.bashrcになかった欠落している証明書への参照をクリーンアップするmacOSでの私の解決策は次のとおりです。

unset ${!DOCKER*}

ソース: https://forums.docker.com/t/initial-install-of-docker-for-mac-could-not-read-ca-certificate/9170/7

0
xaval