Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Unify Docker tags for amd64 and arm64 architectures #319

Closed

Conversation

sonroyaalmerol
Copy link
Contributor

This is just another option if we want to unify the tags for both architectures.

The workflow is not as straightforward as it used to since we're using different Dockerfiles and different base images. Builds are made, pushed into a file, and uploaded as an artifact. The artifacts are then downloaded and pushed into a local registry before getting pushed to Docker Hub in one tag by another job. I'm not sure if there is a simpler way to do this.

@thijsvanloef
Copy link
Owner

Hi! I'm not sure if this is the way I want to move forward with the images. This is easier for the user, this is a pretty complex system to maintain. I'll have to think about it

@USA-RedDragon
Copy link
Contributor

USA-RedDragon commented Feb 11, 2024

Just wanted to share my take on the same concept: USA-RedDragon/palworld-server-docker@e1fc828, which has a lot less code impact (6 changed files with 57 additions and 210 deletions.)

There's no real magic to it, it uses:

I can make this a PR, but I didn't want to step on any toes since it's the same goal as this PR.

With this solution, no users will have to specify -arm64 tags since Docker will resolve the appropriate architecture image automatically.

@sonroyaalmerol
Copy link
Contributor Author

Just wanted to share my take on the same concept: USA-RedDragon@e1fc828, which has a lot less code impact (6 changed files with 57 additions and 210 deletions.)

Man, I was so tunnel visioned on the GitHub Workflows and didn't even think of just unifying the Dockerfile itself. This is indeed an option with a lot less deployment magic. I don't mind you having this as a PR.

One concern though is if in the future we have a dependency that needs to be manually build in one architecture (like rcon-cli), we'll probably need to build it for both in your method, right? This is fine right now as rcon-cli is made with Go and has relatively fast build times. I had this concern with a different PR of mine #337 (comment). The build times of the image will probably be a lot longer if I went the Rust tool route.

But, I guess it really wouldn't matter much as the arm64 build times would still be the bottleneck in both approach. I can close this in favor of your PR.

@USA-RedDragon USA-RedDragon mentioned this pull request Feb 11, 2024
3 tasks
@sonroyaalmerol
Copy link
Contributor Author

Closing in favor of #364

@sonroyaalmerol sonroyaalmerol deleted the unify-docker-tags branch February 13, 2024 00:12
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants