我不知道如何覆盖图像的默认命令。
ECSTaskDefinition:
Type: AWS::ECS::TaskDefinition
Properties:
ContainerDefinitions:
-
Name: "app"
Image: "xxx/xxx:v1.0.2"
Cpu: 128
Memory: 128
PortMappings:
- ContainerPort: 80
Essential: true
LogConfiguration:
LogDriver: awslogs
Options:
awslogs-group: !Ref LogsLogGroup
awslogs-region: eu-west-1
awslogs-stream-prefix: "app"
-
Name: "app-test-admin"
Image: "xxx/xxx:v1.0.2"
Cpu: 128
Memory: 128
PortMappings:
- ContainerPort: 80
Essential: true
LogConfiguration:
LogDriver: awslogs
Options:
awslogs-group: !Ref LogsLogGroup
awslogs-region: eu-west-1
awslogs-stream-prefix: "app-test-admin"
dockerimage 有默认命令
CMD ["npm", "start"]
。但在第二个容器中我想用 npm run test-admin
覆盖
现在已正式记录(我认为最初情况并非如此),但为了此处的完整性,可以将其添加到 ContainerDefintions 中。例如:
ContainerDefinitions:
- Name: app
Command:
- 'celery'
- '-A'
- 'app1'
- 'worker'
- '-E'
来自 Compose 文件参考:
命令
覆盖默认命令。
command: bundle exec thin -p 3000
命令也可以是列表,类似于dockerfile的方式:
command: ["bundle", "exec", "thin", "-p", "3000"]