Area: Deployment Issues
Sub-Area: Remote Executor / Docker Image Registry Configuration
Issue
When pulling the DataHub Cloud remote executor Docker image (e.g., acryl-executor:<version>-cloud) through an internal Artifactory proxy or pull-through cache, users may observe that only the arm64 architecture variant is available, causing deployments on amd64 hosts to fail. The DataHub Cloud remote executor image is built and published as a genuine multi-architecture image supporting both linux/amd64 and linux/arm64. When the issue is encountered via an Artifactory proxy, it is typically caused by Artifactory caching a single-architecture manifest from a prior pull, and subsequent pulls hit that stale cached manifest rather than retrieving the full multi-arch manifest from the upstream registry.
Error Messages
Unable to find image '<artifactory-host>/docker-hub/acrylio/acryl-executor:<version>-cloud' locallyWARNING: The requested image's platform (linux/amd64) does not match the detected host platform (linux/arm64/v8)
You Might Be Asking
- Does the DataHub Cloud remote executor image support both
amd64andarm64architectures? - Why does pulling the executor image with
--platform linux/amd64through my Artifactory proxy still result in anarm64image? - How do I fix a stale or incorrect architecture manifest cached in Artifactory?
- Should I configure my Artifactory proxy to point to the Cloudsmith registry instead of Docker Hub for DataHub executor images?
Solution
-
Confirm the image is genuinely multi-arch by inspecting the manifest directly from the upstream registry.
Bypass your internal proxy and inspect the manifest directly from Docker Hub or the official registry. You should see entries for both
amd64andarm64.docker manifest inspect acrylio/acryl-executor:<version>-cloudIf both architecture entries appear, the upstream image is correct and the issue is isolated to your Artifactory cache.
-
Verify the pull works correctly when bypassing Artifactory.
docker pull --platform linux/amd64 acrylio/acryl-executor:<version>-cloud docker run --rm --platform linux/amd64 acrylio/acryl-executor:<version>-cloud uname -mThe expected output of
uname -misx86_64. If this succeeds, the issue is confirmed to be with your Artifactory proxy cache, not the upstream image. -
Evict the stale cached manifest from Artifactory.
Have your Artifactory administrator evict the cached manifest for the affected image and tag. This can be done via the Artifactory UI or using the Artifactory REST API:
# Evict a cached artifact via the Artifactory REST API curl -X DELETE \ -u <artifactory-admin-user>:<artifactory-admin-password> \ "https://<your-artifactory-host>/artifactory/<repo-key>/acrylio/acryl-executor/<version>-cloud/"After eviction, re-pull the image through Artifactory with the desired platform flag to allow Artifactory to fetch the correct multi-arch manifest from upstream:
docker pull --platform linux/amd64 <your-artifactory-host>/docker-hub/acrylio/acryl-executor:<version>-cloud -
(Recommended) Migrate your Artifactory remote repository to point to the Cloudsmith registry.
DataHub Cloud executor images have migrated from Docker Hub to Cloudsmith as the primary upstream registry. Updating your Artifactory remote repository URL to point to Cloudsmith ensures you always pull from the authoritative source and reduces the risk of stale manifest caching from Docker Hub.
Update your Artifactory remote repository configuration to use the following registry URL:
https://docker.cloudsmith.ioContact DataHub Support to obtain the appropriate entitlement token required to authenticate against the Cloudsmith registry.
Note: If your Artifactory remote repository is shared with other images that must continue to pull from Docker Hub, evaluate creating a separate remote repository entry for DataHub executor images before making this change.
-
Verify the corrected pull after cache eviction or registry migration.
docker pull --platform linux/amd64 <your-artifactory-host>/<repo>/acrylio/acryl-executor:<version>-cloud docker run --rm --platform linux/amd64 <your-artifactory-host>/<repo>/acrylio/acryl-executor:<version>-cloud uname -m # Expected output: x86_64
Additional Notes
The DataHub Cloud remote executor image is built using --platform linux/amd64,linux/arm64 in the CI pipeline, and both architectures are officially supported and tested for DataHub Cloud deployments. The root cause described in this article — Artifactory caching a single-arch manifest — is a known behavior of pull-through cache registries when the initial cached pull was made without multi-arch manifest support enabled, or when a single-platform pull was made before the multi-arch manifest was cached. This issue is not specific to any particular version of the executor image and can affect any tag. If you continue to experience architecture mismatch errors after clearing the Artifactory cache, contact DataHub Support for further investigation.
Related Documentation
- Bundling Additional Connectors: Multi-Architecture Image Support
- Setting Up the Remote Ingestion Executor
Tags: deployment, docker, multi-arch, artifactory, remote-executor, acryl-executor, arm64, amd64, registry, cloudsmith