-
Notifications
You must be signed in to change notification settings - Fork 564
Description
Feature Request: Multi-platform Docker Builds
The current Digger Docker images appear to be built for a single architecture, primarily amd64. This presents a challenge for development, CI/CD, and production environments that use different CPU architectures, such as Apple Silicon (M1/M2/M3) Macs or ARM-based servers.
When running Digger in these environments, Docker must use emulation (e.g., QEMU) to run the amd64 image, which can lead to significant performance degradation, increased resource consumption, and in some cases, unexpected errors or instability. This makes it difficult for teams with heterogeneous environments to use Digger effectively.
I would like Digger's official Docker images to be built and pushed as multi-platform images, leveraging the docker buildx tool. This would create a single manifest that points to images for multiple architectures, such as linux/amd64 and linux/arm64.
The goal is that when a user runs docker pull diggerhq/digger_backend:latest, Docker automatically pulls the image that is native to their machine's architecture, eliminating the need for emulation and ensuring optimal performance.
Currently, a workaround is to manually build a native image from the Digger source code on the target machine. However, this adds a complex, manual step to the self-hosting or CI/CD setup process and is not a sustainable or scalable solution for many teams.
Supporting multi-platform builds is crucial for the following reasons:
- Performance: It provides a significant performance boost for developers and CI runners on ARM-based hardware.
- Wider Adoption: It makes Digger more accessible to teams that have already adopted ARM hardware, such as those using M-series MacBooks or Graviton-based AWS EC2 instances.
- Simpler User Experience: It removes a major pain point for self-hosting Digger and simplifies CI/CD pipeline configurations.
- Future-Proofing: As the industry continues to shift towards ARM architecture for efficiency, this feature will ensure Digger remains a relevant and easy-to-use tool.
Thank you for considering this feature request.