【发布时间】:2020-05-11 04:35:12
【问题描述】:
我正在尝试使用 AWS Batch 和 boto3 通过 Docker 运行多个 shell 命令。当我尝试如下使用 & 符号提交多个命令时,作业失败。
我的尝试
import boto3
client = boto3.client("batch")
response = client.submit_job(
jobName='AndrewJob',
jobQueue='AndrewJobQueue',
jobDefinition='AndrewJobDefinition',
containerOverrides={
'command': 'ls & python myjob.py'.split(),
},
timeout = {'attemptDurationSeconds': 100}
)
print(response)
错误是:
ls: cannot access '&': 没有这样的文件或目录
根据此处的 Docker 文档 https://docs.docker.com/engine/reference/builder/#cmd 和此处的帖子 docker run <IMAGE> <MULTIPLE COMMANDS> ,这似乎应该以 shell 形式实现。
【问题讨论】:
-
你试过
&&吗? -
@badger0053 - 是的,我试过 && 并得到同样的错误(但使用 '&&')
标签: python-3.x amazon-web-services docker aws-batch