【问题标题】:Docker -v flag translated to AWS ECS Task DefinitionDocker -v 标志转换为 AWS ECS 任务定义
【发布时间】:2021-12-24 22:16:28
【问题描述】:

我在这里关注数据狗指南:https://docs.datadoghq.com/database_monitoring/setup_postgres/aurora/?tab=docker

说要运行这个 docker 命令:

docker run -e "DD_API_KEY=${DD_API_KEY}" \
  -v /var/run/docker.sock:/var/run/docker.sock:ro \
  -l com.datadoghq.ad.check_names='["postgres"]' \
  -l com.datadoghq.ad.init_configs='[{}]' \
  -l com.datadoghq.ad.instances='[{
    "dbm": true,
    "host": "<AWS_INSTANCE_ENDPOINT>",
    "port": 5432,
    "username": "datadog",
    "password": "<UNIQUEPASSWORD>"
  }]' \
  gcr.io/datadoghq/agent:${DD_AGENT_VERSION}

这一切都很好,标签很容易配置;我不清楚的是如何设置卷的任务定义(最好在控制台中)

我不确定如何将-v /var/run/docker.sock:/var/run/docker.sock:ro 转换为这些输入:

我目前在我的Dockerfile 中有这个(但我认为这只是解决方案的一部分 - 并且可能不正确):

VOLUME ["/var/run/docker.sock:/var/run/docker.sock:ro"]

【问题讨论】:

    标签: docker amazon-ecs aws-fargate datadog ecs-taskdefinition


    【解决方案1】:

    该映射被称为安装 docker 套接字。这意味着您正在让您的容器访问 docker 守护程序。这反过来意味着这是一件大事。它可以工作,并且某些特定场景需要这样做(例如,Jenkins 容器可能需要它才能在主机上启动新的工作容器)。我不知道足够的数据狗来说明他们用这个做什么。

    您没有将其映射到 Dockerfile 内,但就您希望在 ECS 控制台上映射它的位置而言,您走在正确的道路上(请参阅 here)。

    请注意,使用 Fargate(仅限 EC2)不支持此设置。

    【讨论】:

      猜你喜欢
      • 2017-03-04
      • 1970-01-01
      • 1970-01-01
      • 2020-08-19
      • 2019-08-13
      • 2016-05-04
      • 1970-01-01
      • 1970-01-01
      • 2023-01-18
      相关资源
      最近更新 更多