docker - /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 等等
其中任何一个都失败并出现上述错误。
为什么?我会非常感谢任何帮助。
解决方案
如果您查看基本映像arm64v8/python:3.8-alpine它会在 docker build 结束时删除所有内容,一切都意味着APK
,这就是您的命令失败的原因,并且bash
基本映像中也没有,所以您不会能够使用 bash 运行容器。
您可以将此图像视为仅存在的划痕python3
。
推荐阅读
- python - 如何继续添加、检索和比较 MySQL 数据库中的数据?我正在尝试做一个登录平台
- python-3.x - 对于等高线图,legend() 为空;这是设计使然吗?
- javascript - 如何创建查询以获取给定月份的数据?
- css - 使用 TailwindCSS 将元素的高度扩展到页面底部
- apache-spark - 单独读取文件而不是分组读取文件时,将 pyspark 数据帧写入磁盘有效
- javascript - 使用redux和react时渲染条件jsx的正确方法是什么
- haskell - 如何将 ghcide 添加到 shell.nix
- jquery - 为什么 datatables.net 在我的 Rails 开发环境中可以工作,但在部署到 Heroku 时却不行?
- python - flask-sqlalchemy:放置 db.event.listen() 的位置
- haskell - 无法在 Haskell 中使用产品