我正在尝试在 Heroku 上部署一个项目。我已经设置了 bash 入口点应用程序,该应用程序位于应用程序根目录中。 Dockerfile 内容:
FROM node:10
# Create app directory
WORKDIR /usr/app
# Install app dependencies
# A wildcard is used to ensure both package.json AND package-lock.json are copied
# where available (npm@5+)
COPY package*.json ./
RUN npm install
# If you are building your code for production
# RUN npm ci --only=production
# Bundle app source
COPY . .
RUN entrypoint.sh
当heroku尝试部署时,调用此行中的入口点会失败:
RUN entrypoint.sh
它说找不到entrypoint.sh - 尽管它位于项目目录中并且已添加到容器中。查看项目结构here .
最佳答案
您正在使用 RUN
而不是 ENTRYPOINT
。
RUN
表示“作为构建的一部分运行此命令”。ENTRYPOINT
表示“将此命令设置为执行docker run
时发生的情况。”
关于docker - Heroku:找不到 docker 入口点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59287314/