docker - Docker -v 标志转换为 AWS ECS 任务定义
问题描述
我在这里关注数据狗指南: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 套接字。这意味着您正在让您的容器访问 docker 守护程序。这反过来意味着这是一件大事。它可以工作,并且某些特定场景需要这样做(例如,Jenkins 容器可能需要它才能在主机上启动新的工作容器)。我不知道足够的数据狗来说明他们用这个做什么。
您没有将它映射到内部,Dockerfile
但就您希望在 ECS 控制台上映射它的位置而言,您走在正确的道路上(请参阅此处)。
请注意,使用 Fargate(仅限 EC2)不支持此设置。
推荐阅读
- smartcontracts - EOS 智能合约问题
- css - 使用填充 css 分隔 4 个边框(边框底部)并在列(th)之间留出空间
- guzzle - 检索 MailChimp 数据中心字符串时出错
- hikaricp - HikariPool-1 - 连接不可用(Camunda)
- python - 官方transformer发布的位置编码与原论文不同
- angularjs - 带有 ng-if 的 Angular ng-repeat 不适用于 tr 标签
- ruby-on-rails - 视频不是允许的类型(允许的类型:video/mp4)、Shrine、Rails
- javascript - html中行和列的总和
- android - 从资产白子文件夹加载文件
- javascript - 类型“订阅”不可分配给类型“可观察”
'