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

Feature request: Make the Docker image multi-platform #25

Open
gancho-ivanov opened this issue Jul 18, 2022 · 9 comments
Open

Feature request: Make the Docker image multi-platform #25

gancho-ivanov opened this issue Jul 18, 2022 · 9 comments
Assignees
Labels
enhancement New feature or request

Comments

@gancho-ivanov
Copy link

Hi,

I'd like to request to make the Docker image multi-platform.
Currently https://hub.docker.com/r/dfam/tetools/tags are only for linux/amd64.
Could you please add linux/arm64 to the supported platforms ?

The task should be (relatively) easy by using docker buildx instead of docker build. I'd be glad to help if the feature is approved!

Thank you!

@julien-faye
Copy link

+1 for adding support for linux/arm64 platform!

@markjens
Copy link

markjens commented Nov 8, 2022

One more vote for linux/arm64 version of the image from me!

@asgray
Copy link
Contributor

asgray commented Jan 25, 2024

This answer is long overdue, but in case anyone still cares, we unfortunately cannot build the current version of TETools for arm64. We don't maintain all of the included tools, and at least one of those (HMMER) won't compile for arm64 systems.

I think the best option might be to fork/clone the repo, modify the Dockerfile to only include the tools you need, and try to build it yourself, but I also can't guarantee that everything you include will be compatible.

It's possible that the tools we include will change in the future, but for now I'll close this issue.

@asgray asgray closed this as not planned Won't fix, can't repro, duplicate, stale Jan 25, 2024
@markjens
Copy link

Hello @asgray !

Thank you for your response!
HHMER added support for Linux/Mac ARM64 with v3.4: EddyRivasLab/hmmer@cb4d290

I will try to update the tools to their latest versions and see which ones need work!

@asgray
Copy link
Contributor

asgray commented Jan 26, 2024

Oh thanks for the heads up. Reopening this issue.

@asgray asgray reopened this Jan 26, 2024
@asgray
Copy link
Contributor

asgray commented Feb 12, 2024

It looks like the the last dependency blocking a full arm64 built is NINJA. It's only required to run RepeatModeler, but it doesn't look like there are plans for it to be updated to arm64 in the new future.
This Issue presents a possible solution, but we don't have the bandwidth at present to work on it.

@markjens
Copy link

NINJA team just released https://github.com/TravisWheelerLab/NINJA/releases/tag/0.99-cluster_only that builds on Linux ARM64!

@asgray
Copy link
Contributor

asgray commented Feb 21, 2024

I've pushed out a new multi-platform version of TETools to DockerHub, starting from version 1.88.5. There should be no other changes between 1.88 and 1.88.5 other than platform compatibility. That said, please report any issues, since we are not able to test the arm64 image directly.

@asgray asgray closed this as completed Feb 21, 2024
@asgray asgray pinned this issue Feb 21, 2024
@asgray asgray unpinned this issue Mar 13, 2024
@rmhubley
Copy link
Member

Hi @gancho-ivanov (and others). We do not have a satisfactory build for ARM64 yet and I am not sure we have the time to work on this. The current Dockerfile installs pre-compiled binaries for two packages (RMBlast and UCSC Tools) and therefore we would need to generate cross-compiled ARM64 binary equivalents, or encode the compilation in the Dockerfile itself. The NCBI Blast (RMBlast) compilation is super long (even using multi-threaded builds) and I am sure buildX would take forever to build this. If you know of a simpler way to handle this and test it, please let us know. I am going to leave this open as wished-for-feature and we will try to get back to it when we can.

@rmhubley rmhubley reopened this Sep 13, 2024
@rmhubley rmhubley added the enhancement New feature or request label Sep 13, 2024
@rmhubley rmhubley self-assigned this Sep 13, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

5 participants