【发布时间】:2021-03-07 09:42:45
【问题描述】:
我真的不明白。我正在尝试使用 gunicorn 将我的 python 应用程序从 GitHub 部署到 docker 以启动应用程序。但是在构建成功后但在部署开始之前,我不断收到此错误
starting non-root container [./start.sh]: creating process: failed to load /usr/app/start.sh: exec format error
我已尝试更改 start.sh 文件的权限,但没有更改。 这是我的start.sh
gunicorn -b :5000 --access-logfile - --error-logfile - pixelshop:app
这是我的码头工人
FROM python:latest
WORKDIR /usr/app
COPY . .
RUN apt-get update
RUN apt-get install -y libgl1-mesa-dev
RUN pip install -r requirements.txt
RUN pip install Flask
RUN pip install gunicorn
RUN chmod +x start.sh
ENTRYPOINT ./start.sh
【问题讨论】:
-
在脚本开头添加“shebang”行
#!/bin/sh有帮助吗? -
如果你在 Windows 上设置 LF
start.sh。 -
将
start.sh添加到您的问题中。根据您的 .sh 文件应该以bash还是sh开头,您应该将#!/bin/bash或#!/bin/sh添加到第一行,正好是第一行。
标签: python docker gunicorn digital-ocean