mirror of https://github.com/docker/compose.git
111ad3b039
Currently, we publish Compose artifacts following the OCI 1.1 specification, which is still in the RC state. As a result, not all registries support it yet. Most notably, AWS ECR will reject certain OCI 1.1-compliant requests with `405 Method Not Supported` with cryptic `Invalid JSON` errors. This adds initial support for Compose to generate either an OCI 1.0 or OCI 1.1 compatible manifest. Notably, the OCI 1.0 manifest will be missing the `application/vnd.docker.compose.project` artifact type, as that does not exist in that version of the spec. (Less importantly, it uses an empty `ImageConfig` instead of the newer `application/vnd.oci.empty.v1+json` media type for the config.) Currently, this is not exposed as an option (via CLI flags or env vars). By default, OCI 1.1 is used unless the registry domain is `amazonaws.com`, which indicates an ECR registry, so Compose will instead use OCI 1.0. Moving forward, we should decide how much we want to expose/ support different OCI versions and investigate if there's a more generic way to feature probe the registry to avoid maintaining a hardcoded list of domains, which is both tedious and insufficient. Signed-off-by: Milas Bowman <milas.bowman@docker.com> |
||
---|---|---|
.. | ||
api | ||
compose | ||
e2e | ||
mocks | ||
progress | ||
prompt | ||
remote | ||
utils | ||
watch |