vdesabou / kafka-docker-playground

🐳✨ Fully automated Apache Kafka® and Confluent Docker based examples // 👷‍♂️ Easily build examples or reproduction models
https://kafka-docker-playground.io
MIT License
628 stars 205 forks source link

Feature Request: Add Flag for Specifying Docker Container Image Architecture #5723

Open cwawak opened 6 days ago

cwawak commented 6 days ago

First off, I'd like to extend my gratitude for your efforts in maintaining this valuable resource for the Kafka community. It has significantly streamlined the process of setting up Kafka environments for development and testing.

I'm reaching out to propose a feature that I believe could enhance the usability of Kafka Docker Playground, especially for those of us working across different hardware architectures.

Feature Description: A flag within the Kafka Docker Playground configuration that allows users to explicitly specify the architecture of the Docker container images to be used (e.g., amd64, arm64, etc.). This feature would be particularly useful for scenarios where Docker is running on a remote machine or cloud instance with a different architecture from the local machine issuing the Docker commands.

Use Case: I recently encountered a situation where I was running Kafka Docker Playground on my M1 Mac, with Docker configured to use an engine running on an EC2 instance (x86_64 architecture). However, the system attempted to pull and run ARM-based images instead of x86 ones, which led to compatibility issues. The ability to specify the architecture directly would have circumvented this problem, allowing for a smoother and more intuitive setup process in my edge-case.

Proposed Solution: Introduce a new flag (e.g., --arch or --image-architecture) that can be used in the command line when starting Kafka Docker Playground. This flag would instruct the system to pull and use container images that match the specified architecture.

Example:

./start.sh --arch amd64

This feature would not only benefit users in mixed-architecture environments but also enhance the flexibility of Kafka Docker Playground for various deployment scenarios.

Potential Impact:

I understand that this feature might require a thoughtful consideration of the current architecture and possibly significant changes to the implementation. However, I believe the long-term benefits to the user community would be substantial.

Thank you for considering this feature request. I am more than willing to discuss it further and contribute to its development if needed.

Thank you,

Chris

vdesabou commented 6 days ago

Playground entirely relies on docker to deploy correct images.

Are you using something like this ? https://www.docker.com/blog/how-to-deploy-on-remote-docker-hosts-with-docker-compose/

If so, I'll expect to work without any modifications needed on playground side.