docker
Docker Toolboxをインストールした後、cygwinシェルで実行してみましたが、次のような結果が得られました。cygwin
windows
docker version
$ docker version
Could not read CA certificate "\\cygdrive\\c\\Users\\Alexey\\.docker\\machine\\machines\\default\\ca.pem": open \cygdrive\c\Users\Alexey\.docker\machine\machines\default\ca.pem: The system cannot find the path specified.
ただし、実際のファイル/cygdrive/c/Users/Alexey/.docker/machine/machines/default/ca.pemがあり、問題は証明書ファイルのパスに無効なスラッシュがあるようです(Windows対UNIX)。ところで、どこで直すべきかわかりません。
以下は ~/.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=/cygdrive/c/Users/Alexey/.docker/machine/machines/default
export TERM=cygwin
修正する
Alexey@Alexey-PC ~
$ echo $DOCKER_CERT_PATH
/cygdrive/c/Users/Alexey/.docker/machine/machines/default/
Alexey@Alexey-PC ~
$ docker version
Could not read CA certificate "\\cygdrive\\c\\Users\\Alexey\\.docker\\machine\\machines\\default\\ca.pem": open \cygdrive\c\Users\Alexey\.docker\machine\machines\default\ca.pem: The system cannot find the path specified.
解決策DOCKER_CERT_PATH
以下の@cloverhapが提案したように環境変数を設定する必要がありますが、これにはcygwin以外のWindowsパスを含める必要があり、バックスラッシュをエスケープする必要があるため、回避策は次のように追加することです。
export DOCKER_CERT_PATH=C:\\Users\\%USERNAME%\\.docker\\machine\\machines\\default
到着.bash_profile
ベストアンサー1
私のcygwin環境では、実際にdocker証明書パスは次のように設定されていますが、dockerが正しく機能しているようです。
DOCKER_CERT_PATH=C:\Users\user\.docker\machine\machines\default
エラーは実際に以下に報告されます。
DOCKER_CERT_PATH=/cygdrive/c/Users/user/.docker/machine/machines/default
$ docker version
Could not read CA certificate "\\cygdrive\\c\\Users\\user\\.docker\\machine\\machines\\default\\ca.pem": open \cygdrive\c\Users\user\.docker\machine\machines\default\ca.pem: The system cannot find the path specified.
したがって、DOCKER_CERT_PATHを通常のWindowsパス形式に変更してみてください。
export DOCKER_CERT_PATH=C:\\Users\\Alexey\\.docker\\machine\\machines\\default
結果が異なる場合、私のドッカーのバージョンは1.10.1です。