要在 Docker 容器运行时上运行的 Minikube 中构建和运行 Docker 映像,我所要做的就是:
eval $(minikube docker-env)
docker build -t some/tag .
Minikube 将找到该图像。
但是如果我在 cri-o 模式下运行 Minikube,这将无法正常工作,正如预期的那样。有没有办法加载本地 Docker 映像并使用它?理论上,任何符合 OCI 的容器镜像都应该可以工作?
另外,如果这很重要,我在 macOS 上。
好的,所以 Minikube 的官方方式显然是registry插件:
https ://minikube.sigs.k8s.io/docs/tasks/registry/insecure/
听起来不错,不幸的是 K8S 拒绝从 localhost:5000 拉取图像,我不得不使用registry-proxy-ip:80图像规范中的前缀来说服它拉取。我在这里提出了一个问题:https ://github.com/kubernetes/minikube/issues/6012
将
podman build -t some/tag .
为你工作?
不太清楚环境。在虚拟机上,您还可以执行类似的操作
podman pull docker-daemon:some/tag
这将填充 cri-o 存储。
Skopeo 也有类似的命令。