Azure容器部署-“操作失败,状态为200:资源状态失败" [英] Azure Containers deployment - "Operation failed with status 200: Resource State Failed"
问题描述
在Azure中,我们尝试使用具有准备好的YAML的Azure容器实例来创建容器.在执行密码容器创建命令的机器上,输入密码后,我们可以成功登录到我们的私有注册表(例如, JFrog Artifactory 上的fa-docker-snapshot-local.docker.comp.dev),我们可以码头工人也拉它
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
因此我们可以成功拉出它,并且图像路径与手动进行docker pull时相同:
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
我们有要部署的YAML文件,并尝试使用SAME服务器中的az命令创建容器.在YAML文件中,我们设置了相同的注册表信息:服务器,用户名和密码以及相同的图像
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
当我们尝试执行此命令时,它需要30分钟,并且在显示该消息之后:部署失败.操作失败,状态为200:资源状态失败".
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"
全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
推荐答案
据我所知,您的YAML文件没有问题,我只能给您一些可能的原因.
According to my knowledge, there is nothing wrong with your YAML file, I only can give you some possible reasons.
- 确保配置正确,服务器URL,用户名和密码,还包括图像名称和标签;
- 将端口从
'9000'更改为
9000'',我的意思是删除双引号; - 看看注意,也许装载量使容器崩溃了.然后,您需要将文件共享装载到新文件夹,这意味着以前不存在的新文件夹.
- Make sure the configurations are all right, the server URL, username, and password, also include the image name and tag;
- Change the port from
'9000' into
9000``, I mean remove the double quotes; - 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.
这篇关于Azure容器部署-“操作失败,状态为200:资源状态失败"的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!