Sai*_*ile 4 deployment image docker kubernetes kubernetes-pod
我有一个 kubernetes 节点,即控制平面,它对于部署 pod 来说是不受污染的。我有一个泊坞窗图像sdmay23-42.ece.iastate.edu:5000/canvas-lti-frontend:v2
。
我已登录 docker cli。daemon.json 设置为不安全的注册表,我可以通过以下方式进行验证docker info
:
Docker Root Dir: /var/lib/docker\n Debug Mode: false\n Username: sdmay2342\n Registry: https://index.docker.io/v1/\n Labels:\n Experimental: false\n Insecure Registries:\n sdmay23-42.ece.iastate.edu:5000\n 127.0.0.0/8\n Live Restore Enabled: false\n
Run Code Online (Sandbox Code Playgroud)\n我可以拉图像:
\nStatus: Image is up to date for sdmay23-42.ece.iastate.edu:5000/canvas-lti-frontend:v2\nsdmay23-42.ece.iastate.edu:5000/canvas-lti-frontend:v2\n
Run Code Online (Sandbox Code Playgroud)\n我可以从图像构建一个容器:
\nCONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES\nad582a4d514b sdmay23-42.ece.iastate.edu:5000/canvas-lti-frontend:v2 "docker-entrypoint.s\xe2\x80\xa6" 6 seconds ago Up 6 seconds 3000/tcp test-frontend\n
Run Code Online (Sandbox Code Playgroud)\n当我从 yaml 清单将其部署到节点时,出现错误。\n基本清单:
\napiVersion: v1\nkind: Pod\nmetadata:\n name: test-pod\nspec:\n containers:\n - name: test-container\n image: sdmay23-42.ece.iastate.edu:5000/canvas-lti-frontend:v2\n ports:\n - containerPort: 6379\n
Run Code Online (Sandbox Code Playgroud)\n命令:sudo kubectl create -f test-deploy.yaml
\n响应:pod/test-pod created
Pod 的描述:
\nName: test-pod\nNamespace: default\nPriority: 0\nService Account: default\nNode: sdmay23-42/10.29.160.55\nStart Time: Sun, 27 Nov 2022 18:46:54 +0000\nLabels: <none>\nAnnotations: <none>\nStatus: Pending\nIP: 10.244.0.116\nIPs:\n IP: 10.244.0.116\nContainers:\n test-container:\n Container ID: \n Image: sdmay23-42.ece.iastate.edu:5000/canvas-lti-frontend:v2\n Image ID: \n Port: 6379/TCP\n Host Port: 0/TCP\n State: Waiting\n Reason: ImagePullBackOff\n Ready: False\n Restart Count: 0\n Environment: <none>\n Mounts:\n /var/run/secrets/kubernetes.io/serviceaccount from kube-api-access-bvwzz (ro)\nConditions:\n Type Status\n Initialized True \n Ready False \n ContainersReady False \n PodScheduled True \nVolumes:\n kube-api-access-bvwzz:\n Type: Projected (a volume that contains injected data from multiple sources)\n TokenExpirationSeconds: 3607\n ConfigMapName: kube-root-ca.crt\n ConfigMapOptional: <nil>\n DownwardAPI: true\nQoS Class: BestEffort\nNode-Selectors: <none>\nTolerations: node.kubernetes.io/not-ready:NoExecute op=Exists for 300s\n node.kubernetes.io/unreachable:NoExecute op=Exists for 300s\nEvents:\n Type Reason Age From Message\n ---- ------ ---- ---- -------\n Normal Scheduled 51s default-scheduler Successfully assigned default/test-pod to sdmay23-42\n Normal BackOff 23s (x2 over 50s) kubelet Back-off pulling image "sdmay23-42.ece.iastate.edu:5000/canvas-lti-frontend:v2"\n Warning Failed 23s (x2 over 50s) kubelet Error: ImagePullBackOff\n Normal Pulling 12s (x3 over 50s) kubelet Pulling image "sdmay23-42.ece.iastate.edu:5000/canvas-lti-frontend:v2"\n Warning Failed 12s (x3 over 50s) kubelet Failed to pull image "sdmay23-42.ece.iastate.edu:5000/canvas-lti-frontend:v2": rpc error: code = Unknown desc = failed to pull and unpack image "sdmay23-42.ece.iastate.edu:5000/canvas-lti-frontend:v2": failed to resolve reference "sdmay23-42.ece.iastate.edu:5000/canvas-lti-frontend:v2": failed to do request: Head "https://sdmay23-42.ece.iastate.edu:5000/v2/canvas-lti-frontend/manifests/v2": http: server gave HTTP response to HTTPS client\n Warning Failed 12s (x3 over 50s) kubelet Error: ErrImagePull\n
Run Code Online (Sandbox Code Playgroud)\n
解决方案是将 containerd 配置为接受不安全的注册表。我以为 kubernetes 使用的是 docker。您可以kubectl get nodes -o wide
查看有关容器运行时的信息。
此处配置containrd的步骤:如何使用最新的Kubernetes从不安全的私有注册表中提取docker镜像。
归档时间: |
|
查看次数: |
6329 次 |
最近记录: |