我正在尝试container-vm
使用机器启动时创建的容器启动 Google Compute Engine VM 实例。您可以在此文档部分中找到一个示例:在实例创建时创建容器。
给定的示例一切正常:
apiVersion: v1
kind: Pod
metadata:
name: service
spec:
containers:
- name: jillix-service
image: gcr.io/google-containers/busybox
command: ['nc', '-p', '8000', '-l', '-l', '-e', 'echo', 'hello world!']
imagePullPolicy: Always
ports:
- containerPort: 8000
hostPort: 80
但是当我尝试改用我自己的容器映像时,该映像无法正常工作:
apiVersion: v1
kind: Pod
metadata:
name: service
spec:
containers:
- name: jillix-service
image: gcr.io/sigma-cairn-99810/service
imagePullPolicy: Always
ports:
- containerPort: 8000
hostPort: 80
在工作示例中,docker 报告以下容器映像位于 VM 上:
$ sudo docker images
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
gcr.io/google_containers/pause 0.8.0 2c40b0526b63 7 months ago 241.7 kB
gcr.io/google-containers/busybox latest 4986bf8c1536 10 months ago 2.433 MB
但是当我使用我的容器图像时,这是缺失的:
gabriel@container-image-builder:~$ sudo docker images
存储库标签图像 ID 创建虚拟大小 gcr.io/google_containers/pause 0.8.0 2c40b0526b63 7 个月前 241.7 kB
所以,我认为这就是我的容器没有启动的原因。但是为什么虚拟机不下载我的gcr.io/sigma-cairn-99810/service
图像?
它与身份验证有什么关系吗?(当我手动登录虚拟机gcloud docker pull
时,系统会提示我gcloud auth login
先登录,然后我可以拉出我的图像,docker run
它正常并且一切正常。)