Azure Containers deployment - “Operation failed with status 200: Resource State Failed”

亡梦爱人 提交于 2021-02-04 16:46:34

问题


From Azure we try to create container using the Azure Container Instances with prepared YAML. From the machine where we execute az container create command we can login successfully to our private registry (e.g fa-docker-snapshot-local.docker.comp.dev on JFrog Artifactory ) after entering password and we can docker pull it as well

docker login fa-docker-snapshot-local.docker.comp.dev -u svc-faselect
Login succeeded

So we can pull it successfully and the image path is the same like when doing manually docker pull:

   image: fa-docker-snapshot-local.docker.comp.dev/fa/ads:test1 

We have YAML file for deploy, and trying to create container using the az command from the SAME server. In the YAML file we have set up the same registry information: server, username and password and the same image

az container create --resource-group FRONT-SELECT-NA2 --file ads-azure.yaml

When we try to execute this command, it takes for 30 minutes and after that message is displayed: "Deployment failed. Operation failed with status 200: Resource State Failed"

Full 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

Can you please help us why this error occurs? Thank you


回答1:


According to my knowledge, there is nothing wrong with your YAML file, I only can give you some possible reasons.

  1. Make sure the configurations are all right, the server URL, username, and password, also include the image name and tag;
  2. Change the port from '9000' into 9000``, I mean remove the double quotes;
  3. Take a look at the Note, maybe the mount volume makes a crash to the container. Then you need to mount the file share to a new folder, I mean the new folder that does not exist before.


来源:https://stackoverflow.com/questions/66008830/azure-containers-deployment-operation-failed-with-status-200-resource-state

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!