DOCKER "来自守护程序的错误响应:dockerfile parse 错误行 38:未知指令:ENTRYPOINT["/BIN/ENTRYPOINT。SH"]"



我是docker的新手,我想了解这个错误的原因,我正在创建一个dockerfile在哪里启动Elasticsearch, Mysql和应用程序,当我构建它时,它给了我这个错误" daemon的错误响应:dockerfile解析错误行38:指令未知:ENTRYPOINT["/BIN/ENTRYPOINT. sh "]">

Dockerfile

FROM ubuntu:20.04
WORKDIR \wsl.localhostUbuntuhomemarcoprojectmultiple-docker-containerbackend
COPY . .
RUN apt update
RUN apt-get update
RUN apt-get install wget -y
RUN apt install apt-transport-https ca-certificates gnupg -y
RUN wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | apt-key add -
RUN sh -c 'echo "deb https://artifacts.elastic.co/packages/7.x/apt stable main" > /etc/apt/sources.list.d/elastic-7.x.list'
RUN apt-get update -y
RUN apt-get install elasticsearch -y
RUN apt install mysql-server -y
RUN apt install npm -y
RUN npm install
RUN npm install nodemon
RUN apt install nodejs -y
EXPOSE 3306 
EXPOSE 9200
EXPOSE 5000
COPY entrypoint.sh /bin/entrypoint.sh
RUN chmod +x /bin/entrypoint.sh
ENTRYPOINT ["/bin/entrypoint.sh"]

entrypoint.sh

#!/bin/sh
service elasticsearch start
service elasticsearch enable
service mysql start
npm start `

有什么问题吗?我在ubuntu终端上运行这个

在你的问题中你写了ENTRYPOINT["/BIN/ENTRYPOINT.SH"],在Dockerfile中我看到了ENTRYPOINT ["/BIN/ENTRYPOINT.SH"]

如果您谈论的是ENTRYPOINT["/BIN/ENTRYPOINT.SH"],错误是在开始方括号前缺少空格。

前面的答案没有多大帮助。

我得到了相同的错误,但我没有遗漏空格,我的错误也没有遗漏空格。

原来,Dockerfile中的指令之间有换行符。

所以很明显间距比它应该的更重要。😉

相关内容

最新更新