Документация Minikube обеспечивает основу для потенциального рабочего процесса на https://minikube.sigs.k8s.io/docs/tasks/docker_registry/. Чтобы использовать podman вместо docker, я сделал следующее:
Запустите мини-куб, как указано, с флагом --insecure-registry
. Я специально использую
minikube start --network-plugin=cni --enable-default-cni --bootstrapper=kubeadm --container-runtime=cri-o --cpus 4 --memory 4g --insecure-registry "192.168.39.0/24"
Включить дополнение реестра Minikube.
minikube addons enable registry
Настройте podman для использования незащищенного реестра мини-куба, добавив реестр в раздел незащищенных реестров /etc/containers/registries.conf
. Этот раздел теперь выглядит как
[registries.insecure]
registries = ['192.168.39.175:5000']
, где 192.168.39.175 - ip мини-куба. Этот ip может измениться после перезапуска мини-куба.
Следуйте командам build, pu sh и запуска в https://minikube.sigs.k8s.io/docs/tasks/docker_registry/, заменяя podman на docker. Предполагается, что файл контейнера test-img существует.
Сборка: podman build --tag $(minikube ip):5000/test-img .
Pu sh: podman push $(minikube ip):5000/test-img
Выполнение: kubectl run test-img --image=$(minikube ip):5000/test-img
Это сработало, но страдает серьезным осложнением: в настоящее время нет очевидного способа установить IP-адрес для виртуальной машины minikube при использовании kvm2. IP всегда будет в 192.168.39.0/24 su bnet, но это единственная уверенность. Каждый раз, когда запускается minikube, IP-адрес реестра будет меняться, что имеет значительные последствия для podman и рабочего процесса в целом.
Еще больше, чтобы найти другое решение.