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コマンドを実行したとき。
私は自分の解決策を見つけました ここ
.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のそのスレッドのすべての人に行きます。
このガイドに従ってください: Docker forMacとDockerToolbox
私のために働いたので、Mac用に変数を作成するのではなく、変数の設定を解除する必要があります。
# grep for DOCKER ENV vars
env | grep DOCKER
unset <DOCKER_VARS>
通常、ほとんどの人は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
から削除することです。それは長期的な解決策のようです。
vim ~/.bash_profile
DOCKER _ *のようなコメント
source ~/.bash_profile
docker info
またはdocker ps
それが役に立てば幸い。
後で削除した特定のDockerマシンに環境をセットアップしたが、環境が削除されたマシンに設定されていたため、同じエラーが発生しました。そのため、Docker呼び出しが存在しないマシンにリダイレクトされ、エラーが発生していました。
環境変数の設定を解除すると、問題が修正されました。
eval $(docker-machine env -u)
どの環境変数が設定解除されるかを確認するには、次のコマンドを実行します。
docker-machine env -u
ファイルがDOCKER_CERT_PATH
env変数に存在する場合、ファイルのアクセス許可の問題が原因でエラーが発生する可能性もあります。このユースケースも確認してください。
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*}
再び~/.bash_profile
または~/.bashrc
になかった欠落している証明書への参照をクリーンアップするmacOSでの私の解決策は次のとおりです。
unset ${!DOCKER*}
ソース: https://forums.docker.com/t/initial-install-of-docker-for-mac-could-not-read-ca-certificate/9170/7