我的dockerfile如下:
FROM bash:4.4
COPY prerequisites_ubuntu.sh /temp/prerequisites_ubuntu.sh
RUN /temp/prerequisites_ubuntu.sh
FROM ubuntu:latest
apt-get update
apt-get install -y coreutils git-core ssh scons build-essential g++ libglib2.0-dev unzip uuid-dev python-dev autotools-dev gcc libjansson-dev cmake
当我执行docker build时,“ docker build --rm --no-cache -t my_image”。 给出错误为
/temp/prerequisites_ubuntu.sh: line 1: FROM: not found
/temp/prerequisites_ubuntu.sh: line 3: apt-get: not found
/temp/prerequisites_ubuntu.sh: line 4: apt-get: not found
对于RaspberryPI或其他平台, prerequisites_ubuntu.sh 文件将更改
答案 0 :(得分:1)
prerequisites_ubuntu.sh文件存在几个问题。首先,它不是一个sh文件。您缺少shebang(它指定了用于执行脚本的shell)。 FROM语句是Dockerfile规范的一部分,而不是shell脚本(这就是为什么您得到FROM:找不到)的错误。 bash映像基于高山linux,它不使用apt-get
,但使用apk add
。将shell脚本更改为使用apk add
后,添加一个shebang,然后删除它应该起作用的FROM
语句。