【问题标题】:How to run a bash script from a Dockerfile on a Mac如何在 Mac 上从 Dockerfile 运行 bash 脚本
【发布时间】:2022-01-15 13:18:26
【问题描述】:

我正在尝试从 Mac 上的 Docker 映像运行 bash 脚本。这是我的 Dockerfile

FROM bash
ADD app.sh /
ENTRYPOINT ["/bin/bash", "/app.sh"]

错误

docker: Error response from daemon: OCI runtime create failed: container_linux.go:380: starting container process caused: exec: "/bin/bash": stat /bin/bash: no such file or directory: unknown.

这是一个创建 Docker 镜像的简单练习,我需要在运行 docker run 时执行 app.sh。

知道我做错了什么吗?

【问题讨论】:

    标签: bash macos docker


    【解决方案1】:

    根据您的错误消息,您的 Docker 映像中不存在文件 /bin/bash。这是为什么呢?

    bash 映像将 bash 可执行文件放在 /usr/local/bin/bash。我是这样确定的:

    $ docker run -it bash
    bash-5.1# which bash
    /usr/local/bin/bash
    bash-5.1# 
    

    我使用 -it 运行 bash 映像以使其具有交互性,然后使用 which 命令为我提供 bash 的完整路径,即 /usr/local/bin/bash

    因此,您需要像这样更改 Dockerfile:

    FROM bash
    ADD app.sh /
    ENTRYPOINT ["/usr/local/bin/bash", "/app.sh"]
    

    【讨论】:

      猜你喜欢
      • 2021-08-26
      • 2020-08-20
      • 2021-06-04
      • 2023-03-07
      • 2016-11-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-01-30
      相关资源
      最近更新 更多