-
Notifications
You must be signed in to change notification settings - Fork 360
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
WX-1828 Private Docker Hub repos in GCP Batch #7515
Conversation
We had to add prepend |
I'm still seeing the same error even when I add the
Also it would be good not to require a |
I will run a test from Cromwell. In testing the GCP Batch SDK directly it will only do authentication with the docker.io prefix. |
With
|
Thank you Dan. I checked my config and it appears to be okay, also the correct Docker Hub username and password are being printed out in the Cloud Logs (which they probably shouldn't be, but that's a separate issue). When I log in with these credentials locally using Docker engine v27.1.1 and try to pull the image from our test WDL I get the following output, exit code 1, and the image is not pulled:
I will try to find a newer private image to test with, but from your output above I'm guessing that would work. So a few concerns here:
|
New info since our meeting earlier today: I was able to confirm that Batch actually can pull and run Docker Image Format v1 images (PR to explicitly assert this here). So that does not appear to be the source of my private Docker woes. I also pushed a new image that is just a re-tag of
which is a complaint about being able to access the repository, not the format of a particular image within the repository. Not sure what's going on here. |
Asked some colleagues. The image manifest v1 has been depreciated for awhile. Lifesciences must be running an older docker client. A rebuild of the docker image should just fix it as long as the docker client version is not a few years old. Could a rebuild of that image be run? Missed your earlier comment. You can strike the suggestion above. |
I finally figured out that the problem has to do with special characters in a password. If I use an all-alpha password, everything works fine. If I use a password with shell metacharacters like |
Wow, great find! |
Great find! Our docker hub token does not have special characters. I had docker hub generate two more and they both do not contain special characters. |
Description
UPDATE: issues with special characters in passwords appear to be resolved
PR to demo broken private Docker repo support in GCP Batch. There are actually multiple existing PAPI v2 Centaur tests in this vein; the one test enabled here for GCP Batch seems to be the simplest and demonstrates the issues clearly enough.
The crux of this test is that the Docker image that is specified for the task is in a private repo to which the Centaur service account has been granted access. This test passes on PAPI v2 but on GCP Batch jobs fail with messages like the following visible in
gcloud batch jobs describe
:Exit code 125 being a typical "something's wrong with that Docker invocation" error.
in Cloud Logging I see the following, including what looks like a plaintext password which I have x'd out below:
So it looks like the GCP Batch backend has acquired and plumbed through the required Docker credentials, but the login to Docker Hub doesn't seem to have happened.
Release Notes Confirmation
CHANGELOG.md
CHANGELOG.md
in this PRCHANGELOG.md
because it doesn't impact community usersTerra Release Notes