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/v2
DockerHub のエンドポイントdocker pull registry.gitlab.com/username/image:tag
に発行するように指示し、デーモンにhttps://registry.gitlab.com/v2
、プライベート GitLab コンテナー レジストリのエンドポイントに Docker レジストリ API 呼び出しを発行するように指示します。