秘密鍵は、Dockerコンテナのボリュームを使用してマウントされます。ホストシステム(Windows)のアクセス許可は、-r--r--r--として定義されます。しかし、compose fileを実行すると、「 '/ root/.ssh/id_rsa'のパーミッション0755がオープンすぎます」というエラーが発生します。
また、ファイルをSFTPサーバーにアップロードするbashスクリプトを使用してアクセス許可を変更しようとしました。
chmod 600 /root/.ssh/id_rsa
エラー:
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
| @ WARNING: UNPROTECTED PRIVATE KEY FILE! @
| @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
| Permissions 0755 for '/root/.ssh/id_rsa' are too open.
| It is required that your private key files are NOT accessible by others.
| This private key will be ignored.
| Load key "/root/.ssh/id_rsa": bad permissions
| Permission denied (publickey,password).
| --- ERROR: sftp failed (status 255) ---
あなたの問題は これ に近いようです。この場合、あなたのchmod 600
はサイレントに失敗するはずです。これはエラーを説明し、ファイルは「誰でも読み取り可能」のままです。前のリンクでのOPの結論は、アクセス許可の問題について次のとおりです。今のところ、Windowsホスト上のGNU/Linux VM)でLinuxコンテナーを実行する方が、Docker Desktop forWindowsを介して直接実行するよりも優先されます。 。
ドキュメント itself を確認すると、この問題とその原因(Docker for Desktopが現在LinuxコンテナのボリュームをSMB経由で処理する方法)はすでにわかっています。
ただし、Windowsベースのコンテナを実行するには引き続き使用する必要があります。