Docker 容器变换提供缺少的图像参数错误
当我尝试使用转换Docker compose文件时,我遇到以下错误:Docker 容器变换提供缺少的图像参数错误,docker,docker-compose,dockerrun.aws.json,Docker,Docker Compose,Dockerrun.aws.json,当我尝试使用转换Docker compose文件时,我遇到以下错误: Container "container-name" is missing required parameter 'image'. 服务与图像参数,它运行良好。但是,使用build参数而不是image的会导致错误。我想使用build参数基于Docker文件构建一些图像,而Docker compose文件中根本不需要图像参数。这里最有效的解决方案是什么 以下是一个例子: db服务成功转换: Docker-compose.yml
Container "container-name" is missing required parameter 'image'.
服务与图像参数,它运行良好。但是,使用build参数而不是image的会导致错误。我想使用build参数基于Docker文件构建一些图像,而Docker compose文件中根本不需要图像参数。这里最有效的解决方案是什么
以下是一个例子:
db
服务成功转换:
Docker-compose.yml:
dockrun.aws.json:
web
服务的转换失败,因为使用了build
而不是image
参数:
Docker-compose.yml:
问题在于AWS ECS(=弹性容器服务)任务定义不能依赖Dockerfile来构建映像。要在任务定义中使用映像,必须已生成映像。因此,任务定义json文件中需要
“image”
键,因此它也必须位于您要转换的docker compose文件中
任务定义的图像可以来自Docker hub(就像
postgres
图像一样),或者您可以构建自己的图像并将其推送到AWS ECR(=弹性容器注册表)。这里的问题不太清楚,您能发布一个完整的dokcer compose文件吗?该文件给出了一个错误和整个错误消息。@ruohola错误消息已经在container transform的问题中,我附加了更多详细信息。
db:
image: postgres
"containerDefinitions": [
{
"essential": true,
"image": "postgres",
"memory": 128,
"mountPoints": [
{
"containerPath": "/var/lib/postgresql/data/",
"sourceVolume": "Postgresql"
}
],
"name": "db"
}
web:
build:
context: .
dockerfile: Dockerfile