如何从kubernetes中的dockerhub中提取图像?

时间:2018-02-28 15:13:47

标签: docker kubernetes dockerhub

我打算在我的kubernetes-clustering infra中部署一个应用程序。 我把图像推到了dockerhub repo。如何从dockerhub中提取图像?

2 个答案:

答案 0 :(得分:7)

使用一行命令创建Docker注册表机密

kubectl create secret docker-registry regcred --docker-username=<your-name> --docker-password=<your-pword> --docker-email=<your-email> -n <your-namespace>

然后您可以在 spec

下的部署文件中使用它
spec:
  containers:
  - name: private-reg-container-name
    image: <your-private-image>
  imagePullSecrets:
  - name: regcred

更多详细信息: https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/#create-a-secret-in-the-cluster-that-holds-your-authorization-token

答案 1 :(得分:3)

Kubernetes在后台运行docker pull pseudo/your-image:latest。 Kubernetes资源中的image字段只是要运行的docker映像。

spec:
  containers:
  - name: app
    image: pseudo/your-image:latest
[...]

由于Docker映像名称不包含特定的Docker注册表URL,因此默认值为docker.io。您的图片实际上是docker.io/pseudo/your-image:latest

如果您的映像托管在私有docker hub仓库中,则需要在“规范”字段中指定映像拉密钥。

spec:
  containers:
  - name: app
    image: pseudo/your-image:latest
  imagePullSecrets:
  - name: dockerhub-credential

以下是用于创建包含您的Docker Hub登录名的秘密的文档:https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/