docker - Heroku:找不到 docker 入口点

标签 docker heroku dockerfile heroku-toolbelt heroku-cli

我正在尝试在 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/

相关文章:

Dockerfile 无法复制文件。 ("cp"命令)

bash - eval $(docker-machine env默认值)在iterm启动脚本中不起作用

docker - 健康检查 - 网络

python - 如何刷新 Heroku buildpack CACHE_DIR?

node.js - Express 服务器在本地工作但在 heroku 上崩溃

mongodb - 在 EC2 上的反向 Nginx 代理后面连接 Dockerized MongoDb 实例

heroku - 在 Heroku 上更新 SSL & Getting, "Pem is invalid/Key doesn' t 匹配 PEM 证书"

mongodb - 与 dockerfile 中的 CMD 和 ENTRYPOINT 混淆

docker - ENV/ARG命令未在Dockerfile中填充变量

c# - 无法从 Docker 中的 ASP.NET Core 3.1 连接到本地 SQL Server