当前位置: 首页 > 知识库问答 >
问题:

将简单docker容器部署到Azure Kubernetes时出错

景品
2023-03-14

我是Azure Kubernetes的新手。我试图将一个简单的。NET核心web api部署到Azure Kubernetes。我刚刚在VS 2019中创建了默认的天气项目。我可以在当地的Docker运行它。我还可以毫无问题地将图像推送到Azure容器存储库。

当我这样做时,我会得到错误:

kubectl apply -f .\deployment.yml  

警告失败(x4超过15秒)kubelet,aks-agentpool-30270636-vmss000000

无法拉出映像“ipaspoccontreg.azurec.io/test:dev”:[rpc错误:code=未知desc=映像操作系统“Windows”无法在此平台上使用,rpc错误:code=未知desc=后台程序的错误响应:Get https://ipaspoccontreg.azurec.io/v2/test/manifests/dev:unauthorization:需要身份验证]

我的deployment.yml是

apiVersion: apps/v1
kind: Deployment
metadata:
  name: test-deployment
spec:
  selector:
    matchLabels:
      app: test-pod
  template:
    metadata:
      labels:
        app: test-pod
    spec:
      containers:
      - name: test-container
        image: ipaspoccontreg.azurecr.io/test:dev
        resources:
          limits:
            memory: "128Mi"
            cpu: "500m"
        ports:
        - containerPort: 80
apiVersion: v1
kind: Service
metadata:
  name: test-service
spec:
  selector:
    app: test-pod
  ports:
  - port: 8080
    targetPort: 80
  type: LoadBalancer

共有1个答案

宣瀚
2023-03-14

您需要在Kubernetes中创建一个秘密,该秘密将包含您的容器注册表凭据。

 类似资料:
  • 我使用docker-composing创建了一个Docker容器。在我的本地环境中,我能够毫无问题地启动我的应用程序。 现在,我想将所有docker容器部署到AWS EC2(ECS)。在阅读了ECS文档后,我发现我们可以使用相同的docker compose在ECS中使用ECS-CLI进行部署。但ECS-CLI目前不适用于windows实例。因此,现在我不知道如何使用docker compose使

  • 问题内容: Docker新手在这里。 我已经设置了docker容器来运行一个简单的Node JS应用程序。 假设我有一个新版本的应用程序(例如 1.1 ),必须由Jenkins CI进行部署。在这里,我对Jenkins CI到底应该做什么应该有所了解: 应该关闭并删除旧容器( 1.0 )并启动新实例 1.1 吗? 要么 应该进入当前运行的容器并仅更新代码吗? 问题答案: 使用CI / CD工具(如

  • 问题 是否有一种方法可以将本地计算机上的docker容器部署到CloudFoundry?如果没有,那么有什么方法可以安全地将容器寄存到CF的某个地方来获取它们呢? CloudFoundry是否能够运行作为Python烧瓶应用程序的docker容器?

  • 问题内容: 我正在尝试部署使用docker-compose构建的应用程序,但是感觉好像我朝着完全错误的方向前进。 我的一切工作都在本地进行-通过适当的网络和主机启动我的应用程序。 我希望能够在生产机器上运行容器和网络的相同配置,而只是使用不同的文件。 我当前的工作流程如下所示: 在这一点上,我希望当它们到达那里时能够再次运行,但这试图根据文件重建容器。 我有一种明显的失落感。我是否应该通过完整的应

  • 当我试图将包含一个简单的streamlit应用程序的Docker映像部署到Heroku时,我遇到了一些初期问题。我的问题是,部署后我无法访问我的Docker。经过仔细观察,我发现了以下错误: 错误R10(启动超时)- 我研究并了解到这是因为端口不可用,因为Heroku将动态分配端口号。 我在Dockerfile中添加了以下内容,以确保不会发生这种情况。 我现在可以看到网络URL和外部URL端口号是

  • 问题内容: 我正在尝试完成有关如何在Azure域/环境中正确使用Windows容器的架构研究,其中我必须将Dot Net Core Web API应用程序容器化并将该容器部署到Azure容器服务中 这是我做的事情 我确实在Azure门户中创建了Azure容器服务帐户/域/虚拟机 此外,我确实使用已安装Docker的容器为Windows Server 2016创建了另一个虚拟机 在Windows S