首页 > 解决方案 > /bin/sh 返回非零代码:docker alpine 中的 1

问题描述

我有以下dockerfile:

FROM arm64v8/python:3.8-alpine
ADD ./src /app
WORKDIR /app
#RUN pip install  --no-cache-dir -r requirements.txt
RUN apk update && apk add bash
CMD ["/usr/local/bin/python","attack.py"]

但是,当我尝试使用

sudo docker build --platform linux/arm32v6 -f docker/Dockerfile -t test . 

当我尝试运行 pip install 或 apk update 时,我会收到以下错误: 在此处输入图像描述

我注释掉了这两行并尝试使用

docker run -it test /bin/ash

以及 usr/bin/ash;usr/bin/sh;/bin/sh 等等
其中任何一个都失败并出现上述错误。

为什么?我会非常感谢任何帮助。

标签: dockerdockerfileqemualpine

解决方案


如果您查看基本映像arm64v8/python:3.8-alpine它会在 docker build 结束时删除所有内容,一切都意味着APK,这就是您的命令失败的原因,并且bash基本映像中也没有,所以您不会能够使用 bash 运行容器。

您可以将此图像视为仅存在的划痕python3


推荐阅读