2

なしでDocker APIを呼び出す方法があるのだろうかと思っていましたdocker daemon

彼らのドキュメントと、Docker CLI の背後にあるソース コードを少し調べましたが、答えが見つかりませんでした。

Docker APIに直接HTTP/HTTPS 呼び出しを行いたい! dockerCLIをインストールしたくありません。これはどういうわけか可能で、例を挙げることができますか?

編集:

docker後でコマンドに使用する資格情報をテストするためにインストールすることなく、Docker Registry API 呼び出しを行いたいと考えていますdocker login

4

2 に答える 2

0

docker CLI <==[Docker エンジン API]==> dockerd

docker CLI は、Docker Engine API を使用して docker デーモンと通信します。最新バージョンはv1.41 です

CLI とデーモンは、同じマシン上にある必要はありません。Docker コンテキストを設定することで、Docker CLI をリモートの Docker デーモンと通信するように指示できるため、Docker をローカルにインストールする必要がありません。同様に、curlまたはその他の SDK を使用して Docker Engine API 呼び出しを発行する場合、ローカル デーモン (インストールされている場合) に unix:///var/run/docker.sock を使用するか、リモート デーモンの URL を使用できます。

dockerd <==[ Docker レジストリ API ]==> Docker レジストリ

docker デーモンは、Docker Registry API を使用して docker レジストリと通信します。最新バージョンはv2です。Adocker pull alpineは、現在のコンテキストのデーモンにDocker レジストリ API 呼び出しをhttps://registry-1.docker.io/v2DockerHub のエンドポイントdocker pull registry.gitlab.com/username/image:tagに発行するように指示し、デーモンにhttps://registry.gitlab.com/v2、プライベート GitLab コンテナー レジストリのエンドポイントに Docker レジストリ API 呼び出しを発行するように指示します。

于 2021-02-12T21:03:31.457 に答える