在$ PATH中找不到从AWS批处理可执行文件启动Docker的问题

问题描述

我有一个这样设置的码头工人镜像

FROM python:3.7-slim

RUN apt-get update && \
    apt-get install -y --no-install-recommends build-essential libssl-dev python3.7-dev curl && \
    rm -rf /var/lib/apt/lists/*

copY mypackage/


ENV PATH /root/.poetry/bin:${PATH}

RUN curl -sSL https://raw.githubusercontent.com/python-poetry/poetry/master/get-poetry.py | python && \
    cd mypackage && \
    poetry install && \
    mkdir /workingdir

workdir /mypackge

ENTRYPOINT [ "/bin/sh","-c" ]

我可以在本地输入它并运行诗歌运行mypackage run

我还可以使用docker image exec poetry运行mypackage run

它有效

我正在部署到AWS ECR并从AWS批处理中运行容器。

我正在发射atm的命令是,我尝试过使用bash -c

"command": ["bash","-c","poetry","run","mypackage","run"],

但是我总是找不到诗歌,我在容器中添加了简单的回声或其他东西。 从aws批处理启动时,就像没有访问$ PATH env var一样。

cloudwatch日志显示

run: poetry: command not found

在步骤Ive中

container process caused \"exec: \\\"poetry\\\": executable file not found in $PATH\": unkNown",

因此,当从AWS批处理运行时,似乎在容器中看不到PATH env var,但它使用exec在本地进行。

如何从AWS批处理而不是仅在本地进行这项工作?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...