docker - 带有 Docker Compose 文件的 AWS ECS -“外部”Docker 卷
问题描述
我有docker-compose.yml
在我的 Docker CE 独立服务器上运行的现有文件。
我想使用 AWS ECS 服务部署相同的配置。该ecs-cli
工具的文档指出可以使用 Docker Compose 文件。其他(更简单的)容器配置已与我现有的文件一起使用。
使用我的配置,出现以下错误:
ERRO[0000] 无法打开 ECS Compose 项目错误="不支持外部选项"
FATA[0000] 无法创建和读取 ECS Compose 项目错误="不支持外部选项"
我正在使用“外部”Docker 卷,以便它们根据需要自动生成,并且在容器停止或删除时不会被删除。
docker-compose.yml
这是我正在测试的文件的简化,允许我将卷安装到正在运行的容器:
version: '3'
services:
busybox:
image: busybox:1.31.1
volumes:
- ext_volume:/path/in/container
volumes:
ext_volume:
external: true
或者,我已阅读其他文档以使用ecs-params.yml
同一目录中的文件来传递变量。这是替换我的docker-compose.yml
文件吗?我曾期望保持它的语法不变。
解决方案
工作配置(这是确保容器保持运行,所以我可以 ssh 进入并查看已安装的驱动器):
version: '3'
services:
alpine:
image: alpine:3.12
volumes:
- test_docker_volume:/path/in/container
command:
- tail
- -f
- /dev/null
volumes:
test_docker_volume:
并在ecs-params.yml
:
version: 1
task_definition:
services:
alpine:
cpu_shares: 100
mem_limit: 28000000
docker_volumes:
- name: test_docker_volume
scope: "shared"
autoprovision: true
推荐阅读
- excel - 使用 Excel VBA 将 pdf 或 Word 附件添加到 Outlook 邮件
- angular - 从点击动作中传递 selectAll 参数
- python - 并行 Python 无法正确接受参数
- mysql - 为什么/我如何能够超过 MySQL 中 varchar 的配置长度?[我的错,我不能]
- gnome - 使用超级键时如何禁用收藏夹加载
- corda - RPC 中的 vaultQuery 从 PersistentState 中的 DB 获取其输出的位置
- android - 点击时ImageView的事件
- spring-boot - LDAP 身份验证超时
- node.js - npm 与 ubuntu 16.04 上的节点 v12.5 不兼容
- odoo-12 - (文档类型:约会,操作:创建)错误