-
Notifications
You must be signed in to change notification settings - Fork 1.7k
Use mirror in Dockerfiles for integration tests to prevent docker hub rate limits #9970
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
Use mirror in Dockerfiles for integration tests to prevent docker hub rate limits #9970
Conversation
Summary of ChangesHello @menahyouyeah, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed! This pull request introduces a widespread change across various Dockerfiles within the project, primarily to address potential Docker Hub rate limiting issues. By switching to Highlights
🧠 New Feature in Public Preview: You can now enable Memory to help Gemini Code Assist learn from your team's feedback. This makes future code reviews more consistent and personalized to your project's style. Click here to enable Memory in your admin console. Changelog
Activity
Using Gemini Code AssistThe full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips. Invoking Gemini You can request assistance from Gemini at any point by creating a comment using either
Customization To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a Limitations & Feedback Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for Github and other Google products, sign up here. You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension. Footnotes
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Code Review
This pull request makes a widespread and consistent change to use mirror.gcr.io for Docker base images, which is a great step towards avoiding Docker Hub rate limits. The changes across the numerous Dockerfiles look correct.
I have one suggestion for improving the maintainability of deploy/skaffold/Dockerfile.deps.
I also noticed a couple of potential omissions you might want to address to ensure complete coverage:
- In
examples/custom-buildx/Dockerfile, the builder stageFROM --platform=$BUILDPLATFORM golang:alpine AS builderstill seems to be pulling from Docker Hub. - The file
deploy/skaffold/Dockerfile.ltsappears to be unmodified and still contains severalFROMinstructions pointing to Docker Hub images (e.g.,alpine:3.10,ubuntu:20.04).
If these were not intentional, it would be good to update them as well.
deploy/skaffold/Dockerfile.deps
Outdated
|
|
||
| # Download kubectl | ||
| FROM alpine:3.21.2 as download-kubectl | ||
| FROM mirror.gcr.io/library/alpine:3.21.2 as download-kubectl |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
To improve maintainability and avoid repeating the same image string multiple times, you could define the Alpine image as a build argument at the top of the file (e.g., near ARG ARCH=amd64) and reuse it in each stage. This makes future updates to the base image much easier.
For example:
ARG ALPINE_IMAGE=mirror.gcr.io/library/alpine:3.21.2
# ... later in the file
FROM ${ALPINE_IMAGE} as download-kubectlYou can then apply this pattern to all the other download-* stages in this file that use the same Alpine image.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please consider using an ARG for the prefix in this an all other files. Should be a quick change using an AI agent / co-pilot. It will allow smaller changes going forward if it has to be changed again.
deploy/skaffold/Dockerfile.deps
Outdated
| # You may obtain a copy of the License at | ||
| # | ||
| # http://www.apache.org/licenses/LICENSE-2.0 | ||
| # http://www.apache.org/licenses/LICENSE-2.0 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
nit: unnecessary space
a2bfb30
into
GoogleContainerTools:main
… rate limits (GoogleContainerTools#9970) * use mirror in Dockerfiles for integration tests * use argument prefix instead * fix for multi stage * more fixes * fix buildx-bin error * Bring back comments * missed a comment
* chore: bump github.com/sigstore/cosign/v2 from 2.6.1 to 2.6.2 (#9948) Bumps [github.com/sigstore/cosign/v2](https://github.com/sigstore/cosign) from 2.6.1 to 2.6.2. - [Release notes](https://github.com/sigstore/cosign/releases) - [Changelog](https://github.com/sigstore/cosign/blob/main/CHANGELOG.md) - [Commits](sigstore/cosign@v2.6.1...v2.6.2) --- updated-dependencies: - dependency-name: github.com/sigstore/cosign/v2 dependency-version: 2.6.2 dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * cicd: bazel github presubmit flow fixes for recent bazel 9.0.0 release (#9961) bazel build fixes for recent bazel 9.0.0 release * chore: bump github.com/sigstore/sigstore from 1.10.3 to 1.10.4 (#9957) Bumps [github.com/sigstore/sigstore](https://github.com/sigstore/sigstore) from 1.10.3 to 1.10.4. - [Release notes](https://github.com/sigstore/sigstore/releases) - [Commits](sigstore/sigstore@v1.10.3...v1.10.4) --- updated-dependencies: - dependency-name: github.com/sigstore/sigstore dependency-version: 1.10.4 dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * chore: bump github.com/sigstore/rekor from 1.4.3 to 1.5.0 (#9956) Bumps [github.com/sigstore/rekor](https://github.com/sigstore/rekor) from 1.4.3 to 1.5.0. - [Release notes](https://github.com/sigstore/rekor/releases) - [Changelog](https://github.com/sigstore/rekor/blob/main/CHANGELOG.md) - [Commits](sigstore/rekor@v1.4.3...v1.5.0) --- updated-dependencies: - dependency-name: github.com/sigstore/rekor dependency-version: 1.5.0 dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * chore: bump github.com/theupdateframework/go-tuf/v2 from 2.3.0 to 2.4.1 (#9962) Bumps [github.com/theupdateframework/go-tuf/v2](https://github.com/theupdateframework/go-tuf) from 2.3.0 to 2.4.1. - [Release notes](https://github.com/theupdateframework/go-tuf/releases) - [Commits](theupdateframework/go-tuf@v2.3.0...v2.4.1) --- updated-dependencies: - dependency-name: github.com/theupdateframework/go-tuf/v2 dependency-version: 2.4.1 dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * test(integration): Update busybox and alpine:3 to use the mirror to avoid docker rate hub limit errors (#9966) test(integration): mirror busybox and alpine:3 images to gcr.io * chore: bump github.com/go-git/go-git/v5 from 5.16.3 to 5.16.5 (#9971) Bumps [github.com/go-git/go-git/v5](https://github.com/go-git/go-git) from 5.16.3 to 5.16.5. - [Release notes](https://github.com/go-git/go-git/releases) - [Commits](go-git/go-git@v5.16.3...v5.16.5) --- updated-dependencies: - dependency-name: github.com/go-git/go-git/v5 dependency-version: 5.16.5 dependency-type: direct:production ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * chore: bump golang.org/x/oauth2 from 0.7.0 to 0.27.0 in /examples/grpc-e2e-tests/service (#9918) chore: bump golang.org/x/oauth2 in /examples/grpc-e2e-tests/service Bumps [golang.org/x/oauth2](https://github.com/golang/oauth2) from 0.7.0 to 0.27.0. - [Commits](golang/oauth2@v0.7.0...v0.27.0) --- updated-dependencies: - dependency-name: golang.org/x/oauth2 dependency-version: 0.27.0 dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * chore: bump golang.org/x/crypto from 0.36.0 to 0.45.0 in /hack/tools (#9916) Bumps [golang.org/x/crypto](https://github.com/golang/crypto) from 0.36.0 to 0.45.0. - [Commits](golang/crypto@v0.36.0...v0.45.0) --- updated-dependencies: - dependency-name: golang.org/x/crypto dependency-version: 0.45.0 dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Use mirror in Dockerfiles for integration tests to prevent docker hub rate limits (#9970) * use mirror in Dockerfiles for integration tests * use argument prefix instead * fix for multi stage * more fixes * fix buildx-bin error * Bring back comments * missed a comment * chore: upgrade golang to 1.25.7 (#9973) Co-authored-by: Darien-Lin <darienl@google.com> * Updated Dockerfile to try to fix vuln bug (#9974) * Updated Dockerfile to try to fix vuln bug * Addressed the gemini-code-assist comments * Fixed the dockerfile so it runs using docker build -f deploy/webhook-v2/Dockerfile . * Updated the node version to fix error (#9976) * Updated Dockerfile to try to fix vuln bug * Addressed the gemini-code-assist comments * Fixed the dockerfile so it runs using docker build -f deploy/webhook-v2/Dockerfile . * Updated node version to try and fix error * chore: fixing docs due to upgrade in Hugo (#9977) fixing docs due to upgrade in Hugo --------- Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: menahyouyeah <minnah@google.com> Co-authored-by: Darien-Lin <darienl@google.com> Co-authored-by: ruhi-chaddha <ruhichaddha@google.com>
Description
Use mirror in Dockerfiles for integration tests to prevent docker hub rate limits