Azure容器部署—“Azure容器部署”;操作失败,状态为200:资源状态失败“;

Azure容器部署—“Azure容器部署”;操作失败,状态为200:资源状态失败“;,azure,docker,containers,azure-container-instances,azure-container-registry,Azure,Docker,Containers,Azure Container Instances,Azure Container Registry,从Azure中,我们尝试使用准备好的YAML的Azure容器实例创建容器。在执行az container create命令的机器上,我们可以在输入密码后成功登录到我们的私有注册表(例如,JFrog Artifactory上的fa-docker-snapshot-local.docker.comp.dev),我们还可以docker拉取密码 docker login fa-docker-snapshot-local.docker.comp.dev -u svc-faselect Login succ

从Azure中,我们尝试使用准备好的YAML的Azure容器实例创建容器。在执行az container create命令的机器上,我们可以在输入密码后成功登录到我们的私有注册表(例如,JFrog Artifactory上的fa-docker-snapshot-local.docker.comp.dev),我们还可以docker拉取密码

docker login fa-docker-snapshot-local.docker.comp.dev -u svc-faselect
Login succeeded
因此,我们可以成功地将其拉入,并且图像路径与手动docker拉入时相同:

   image: fa-docker-snapshot-local.docker.comp.dev/fa/ads:test1 
我们有用于部署的YAML文件,并尝试从同一服务器使用az命令创建容器。在YAML文件中,我们设置了相同的注册表信息:服务器、用户名和密码以及相同的图像

az container create --resource-group FRONT-SELECT-NA2 --file ads-azure.yaml
当我们尝试执行此命令时,需要30分钟,然后显示消息:“部署失败。操作失败,状态为200:资源状态失败”

完整Yaml:

apiVersion: '2019-12-01'
location: eastus2
name: ads-test-group
properties:
  containers:
  - name: front-arena-ads-test
    properties:
      image: fa-docker-snapshot-local.docker.comp.dev/fa/ads:test1
      environmentVariables:
        - name: 'DBTYPE'
          value: 'odbc'
      command:
      - /opt/front/arena/sbin/ads_start
      - ads_start
      - '-unicode'
      - '-db_server test01'                        
      - '-db_name HEDGE2_ADM_Test1'                        
      - '-db_user sqldbadmin'                              
      - '-db_password pass'                   
      - '-db_client_user HEDGE2_ADM_Test1'                
      - '-db_client_password Password55'                
      ports:
      - port: 9000
        protocol: TCP
      resources:
        requests:
          cpu: 1.0
          memoryInGB: 4
      volumeMounts:
      - mountPath: /opt/front/arena/host
        name: ads-filesharevolume
  imageRegistryCredentials: # Credentials to pull a private image
  - server: fa-docker-snapshot-local.docker.comp.dev
    username: svcacct-faselect
    password: test
  ipAddress:
    type: Private
    ports:
    - protocol: tcp
      port: '9000'
  volumes:
  - name: ads-filesharevolume
    azureFile:
      sharename: azurecontainershare
      storageAccountName: frontarenastorage
      storageAccountKey: kdUDK97MEB308N=
  networkProfile:
    id: /subscriptions/746feu-1537-1007-b705-0f895fc0f7ea/resourceGroups/SELECT-NA2/providers/Microsoft.Network/networkProfiles/fa-aci-test-networkProfile
  osType: Linux
  restartPolicy: Always
tags: null
type: Microsoft.ContainerInstance/containerGroups
你能告诉我们为什么会发生这个错误吗?
谢谢

据我所知,您的YAML文件没有问题,我只能给出一些可能的原因

  • 确保配置正确,服务器URL、用户名和密码,还包括图像名称和标签
  • 将端口从
    '9000'更改为
    9000``,我的意思是删除双引号
    
  • 看一看,装载卷可能会使容器崩溃。然后您需要将文件共享装载到一个新文件夹,我指的是以前不存在的新文件夹

  • 你能分享你在azure.yaml上的广告吗?@AndriyBilous我更新了。谢谢你能分享更多关于错误的细节吗?如果在部署此docker compose文件之前网络文件已经存在?@CharlesXu Hi Charles,很遗憾,这是我在日志中看到的唯一信息,没有其他信息。我搜索了一些类似的问题,与核心配额限制有关,但我认为现在不是这样。网络配置文件存在-管理员必须手动创建它。谢谢你能在这个问题上帮助我吗?thanks@AndreyDonald你解决了这个问题吗?我将向我的Azure管理员发送这些说明,我希望他们会根据这些说明重新尝试创建。。。谢谢@安德烈:好吧,等好消息吧@安德烈·唐纳德:太好了。好,我来看看你的新一期。