-
Notifications
You must be signed in to change notification settings - Fork 3.4k
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
Add an option to stage docker images locally to KIND #528
Conversation
Signed-off-by: Josh Kneubuhl <jkneubuh@us.ibm.com>
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.
Hi @jkneubuh,
I would like to request a change for this PR.
if I am correct, as I tested, the load image steps are
Plan A
export TEST_NETWORK_STAGE_DOCKER_IMAGES=true
export TEST_NETWORK_FABRIC_CONTAINER_REGISTRY=localhost:5000
./network kind
./network up
Plan B
./network kind
export TEST_NETWORK_FABRIC_CONTAINER_REGISTRY=localhost:5000
./network load-images
./network up
- How about we keep the steps as Plan B as default?
which means
./network kind
export TEST_NETWORK_FABRIC_CONTAINER_REGISTRY=localhost:5000 // optional here if you want to use costumer settings.
./network load-images
./network up
Thanks and Regards
Sam
and it seems harmless to pull the image again? |
Hi Sam, no this is incorrect. With this PR we no longer use the localhost:5000 registry for core fabric images:
Here are four different scenarios: A) Default use case: fabric images are pulled from public docker.io and ghcr.io repositories directly into KIND:
B) Network errors reading from docker.io/ghcr.io into KIND. Solution : pre-pull and load images into the KIND control plane: (This is option (A) above)
C) Run the daily/CI builds of fabric (not available at docker.io):
D) Run a local / custom build of core fabric images:
The important change here is that this no longer uses the localhost:5000 registry for core fabric images. Also in general it is OK to re-pull an image, but preferable to denote this only when using an @SamYuan1990 can you try option "B" above and see if this solves your issues loading the fabric base images? |
It resolve may things, as for sample the network issue/delay with local kind to access remote docker reg.
so, just focus on load image to kind or not.
which in my point of view,
considering, it seems no harmful to pull image again.
in which case,
|
Hi @SamYuan1990 When
When running
Is there something about the use case above that makes it difficult for your use case? If you have custom scripts to pull images locally, then the option "D" is also available. @mbwhite does this new scheme enable your scenario to run with local Fabric images? I was able to run this without the auto "pull" overwriting the local images. |
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.
it works for my case.
This PR addresses a compromise for development workflows requiring different patterns for loading images into the KIND / kubernetes cluster.
For casual / default usage, the docker images are loaded from the public container registries (docker.io and ghcr.io)
For developers with network issues connecting to public registries, this PR allows for an offline "pull" and stage to the KIND control plane:
@mbwhite and @SamYuan1990 can you please give this PR a test run to double-check that it meets your target use cases? Matthew I had some difficulty testing out PR #507 and the
candidate-use-builtin-ccs-builder
branch with the mainline network scripts. I think this is a better fit for that workflow.Signed-off-by: Josh Kneubuhl jkneubuh@us.ibm.com