Docker + Kubernetes构build
我正在尝试将Docker + Kubernetes用于我的应用程序pipe理。
我已经为Kubernetes集群安装了kubectl,kubeadm,kubelet(从google文档获得步骤)。
现在集群有2个节点(1个主,1个子)
我有一个自定义的Dockerfile,它怎么可以使用它作为Kubernetes豆荚?
如果这是不可能的,如何从船长传输docker构build到Kubernetes孩子。
您可以在集群外部或内部使用私有Dockerregistry,或使用本地(预先拉取的)映像。
-
在群集之外,你可能想看看这些:
- Dockerregistry映像
- Jfrog Artifactoryregistry
- Sonatype Nexus
- Dockerhub私人registry
- Google私人registry
- 亚马逊ECR
- Quai.ioregistry
- Azureregistry
-
在集群内部,您可能需要查看Kubernetes中的私有Dockerregistry
-
如果您不想使用registry,则可以在每个Kubernetes节点上构build映像,以便Docker不必将其拉出。 为了避免Kubernetes试图拉动反正你必须将你的容器的
imagePullPolicy
设置为Never
。 这在官方文档中有描述。
Dockerfiles会创build一个由pod使用的图片,Kubernetes只会使用您创build的docker图片,而不会为您创builddocker图片。 我想你想要做的是:
- 使用docker
docker build
从dockerfile创build一个图像 - 使用docker
docker push
将该图像发送到dockerhub - 创build一个使用你的镜像的kubernetes部署https://kubernetes.io/docs/user-guide/deployments/
这应该让你在正确的方向,但你将不得不阅读更多:)