Docker ECS任务定义是否支持卷映射语法?

Docker ECS任务定义是否支持卷映射语法?,docker,amazon-ec2,amazon-cloudformation,amazon-ecs,Docker,Amazon Ec2,Amazon Cloudformation,Amazon Ecs,docker compose spec支持服务下的卷映射语法,例如: version: '2' volumes: jenkins_home: external: true services: jenkins: build: context: . args: DOCKER_GID: ${DOCKER_GID} DOCKER_VERSION: ${DOCKER_VERSION} DOCKER_COMP

docker compose spec支持
服务
下的卷映射语法,例如:

version: '2'

volumes:
  jenkins_home:
    external: true

services:
  jenkins:
    build:
      context: .
      args:
        DOCKER_GID: ${DOCKER_GID}
        DOCKER_VERSION: ${DOCKER_VERSION}
        DOCKER_COMPOSE: ${DOCKER_COMPOSE}
    volumes:
      - jenkins_home:/var/jenkins_home
      - /var/run/docker.sock:/var/run/docker.sock
    ports:
      - "8080:8080"

在“AWSTemplateFormatVersion”之后:“2010-09-09”,相应的ECS任务定义具有不可读的卷语法(带有
装入点和
卷),如下所示:

"EcsTaskDefinition": {
            "Type": "AWS::ECS::TaskDefinition",
            "Properties": {
                "ContainerDefinitions": [
                    {
                        "Name": "jenkins",
                        "Image": "xyzaccount/jenkins:ecs",
                        "Memory": 995,
                        "PortMappings": [ { "ContainerPort": 8080, "HostPort": 8080 } ],
                        "MountPoints": [
                            {
                                "SourceVolume": "docker",
                                "ContainerPath": "/var/run/docker.sock"
                            },
                            {
                                "SourceVolume": "jenkins_home",
                                "ContainerPath": "/var/jenkins_home"
                            }
                        ]
                    }


                ],
                "Volumes": [
                    {
                        "Name": "jenkins_home",
                        "Host": { "SourcePath": "/ecs/jenkins_home" }
                    },
                    {
                        "Name": "docker",
                        "Host": { "SourcePath": "/var/run/docker.sock" }
                    }
                ]
            }
        }


CloudFormation(now)的ECS任务定义语法是否支持卷映射语法?与docker compose类似……

是的,当然,ECS支持docker套接字安装,但语法有点不同。在任务定义中添加
DOCKER\u HOST
环境变量,源路径应以
/
开头

 "volumes": [
        {
            "name": "docker",
            "host": {
                "sourcePath": "//var/run/docker.sock"
            }
        }
    ]
在AWS ecs的情况下,
/
起作用

此外,您需要在任务定义中添加
DOCKER\u HOST
环境变量

            "environment": [
                {
                    "name": "DOCKER_HOST",
                    "value": "unix:///var/run/docker.sock"
                }
            ]

是的,当然,ECS支持docker socket挂载,但是语法有点不同。在任务定义中添加
DOCKER\u HOST
环境变量,源路径应以
/
开头

 "volumes": [
        {
            "name": "docker",
            "host": {
                "sourcePath": "//var/run/docker.sock"
            }
        }
    ]
在AWS ecs的情况下,
/
起作用

此外,您需要在任务定义中添加
DOCKER\u HOST
环境变量

            "environment": [
                {
                    "name": "DOCKER_HOST",
                    "value": "unix:///var/run/docker.sock"
                }
            ]

通常最好用积极的措辞提问。@user2864740抱歉。。我的建议通常是用积极的措辞提问。@user2864740抱歉。。我的好朋友,谢谢你!我找不到任何关于这方面的文档,但它非常有效。另外,我使用CDK部署我的服务,而不是直接创建cloudformation文件。不要忘记添加具有相同名称和源路径的装入点:)谢谢!我找不到任何关于这方面的文档,但它非常有效。另外,我使用CDK部署我的服务,而不是直接创建cloudformation文件。不要忘记添加具有相同名称和源路径的装入点:)