Docker运行找不到可执行文件“uwsgi”

2024-02-14

我正在尝试使用 Docker 部署 falcon 应用程序。这是我的 Dockerfile:

FROM python:2-onbuild

# Set the working directory to /app
WORKDIR /app

# Copy the current directory contents into the container at /app
ADD . /app

RUN pip install -r ./requirements.txt
RUN pip install uwsgi

EXPOSE 8000

CMD ["uwsgi", "--http”, " :8000" , "—wsgi-file”, "falconapp.wsgi"]

但是我不断收到错误消息:

/bin/sh: 1: [uwsgi,: not found

我尝试在本地目录中运行 uwsgi ,它与以下命令配合得很好:

uwsgi --http :8000 --wsgi-file falconapp.wsgi

为什么 Docker 在这种情况下不起作用???

这是日志,我很确定 uwsgi 已安装:

Step 5/7 : RUN pip install uwsgi
 ---> Running in 2df7c8e018a9
Collecting uwsgi
  Downloading uwsgi-2.0.17.tar.gz (798kB)
Building wheels for collected packages: uwsgi
  Running setup.py bdist_wheel for uwsgi: started
  Running setup.py bdist_wheel for uwsgi: finished with status 'done'
  Stored in directory: /root/.cache/pip/wheels/94/c9/63/e7aef2e745bb1231490847ee3785e3d0b5f274e1f1653f89c5
Successfully built uwsgi
Installing collected packages: uwsgi
Successfully installed uwsgi-2.0.17
Removing intermediate container 2df7c8e018a9
 ---> cb71648306bd
Step 6/7 : EXPOSE 8000
 ---> Running in 40daaa0d5efa
Removing intermediate container 40daaa0d5efa
 ---> 39c75687a157
Step 7/7 : CMD ["uwsgi", "--http”, " :8000" , "—wsgi-file”, "falconapp.wsgi"]
 ---> Running in 67e6eb29f3e0
Removing intermediate container 67e6eb29f3e0
 ---> f33181adbcfa
Successfully built f33181adbcfa
Successfully tagged image_heatmap:latest
dan@D-MacBook-Pro:~/Documents/falconapp_api$ docker run -p 8000:80 small_runner
/bin/sh: 1: [uwsgi,: not found

很多时候你必须为可执行文件编写完整的补丁。如果您转到容器并运行此命令whereis uwsgi它会告诉你现在是/usr/local/bin/uwsgi所以你的 CMD 应该采用相同的形式:

CMD ["/usr/local/bin/uwsgi", "--http", " :8000" , "--wsgi-file", "falconapp.wsgi"]
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Docker运行找不到可执行文件“uwsgi” 的相关文章

随机推荐

  • 如何使用 StyledDocument 和 HTML 进行输出?

    我有一个JTextPane 我想使用其中输出文本StyledDocument 这是我的StyledDocument object StyledDocument dox StyledDocument textArea getDocument
  • ncurses 无法识别箭头键宏

    很长一段时间以来 我一直在努力寻找解决方案 我无法让终端窗口识别键盘 这是我的代码 while 1 if cmd ERR printw Controls LEFT RIGHT and SPACEBAR Q TO QUIT if cmd St
  • 跨平台 C# 媒体 API

    我正在尝试在 mono net 对象中定义一个 VideoFile 以便我可以调用 var file new VideoFile filepath file VideoDuration 是否有一个库 操作系统或商业 可以跨平台 mono n
  • Python 3.2 - GIL - 好/坏?

    Python 3 2 阿尔法is out http python org download releases 3 2 从更改日志来看 GIL 似乎已被完全重写 几个问题 拥有 GIL 是好是坏 和 为什么 新的GIL更好吗 如果是这样 怎么
  • VBA Excel - 无法在重叠选择上使用该命令

    我的代码似乎可以工作 但它突出显示了我的最后一行代码 并显示 运行时错误 1004 无法在重叠选择上使用该命令 我尝试了在网上找到的一些各种更改 但似乎无法修复该错误 Sub Delete EEE Dim Wrds As Variant G
  • ^a-zA-Z0-9 不包括空格?

    我试图找到段落中不是 abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789 且不是空格 gi 的所有内容 a zA Z0 9 gi 上面的方法不行 您还可以尝试 a z
  • 单元测试中什么是正向测试和负向测试

    我对 TDD 还很陌生 我看到一些文档提到了阳性测试 阴性测试 边界测试等 有人能告诉我阳性测试和阴性测试之间的区别吗 有没有关于不同类型测试的参考资料 我不是在找书 阳性检测 通过提供有效的测试系统 数据 阴性检测 通过提供无效的测试系统
  • 在容器内运行 Chromium:libGl 错误

    我正在尝试在 docker 容器内运行 Chromium 这是我得到的输出 Created new window in existing browser session libGL error failed to open drm devi
  • 如何处理 Windows Phone 7 上的后退按钮

    在 Windows Phone 7 模拟器上 当按下硬件后退按钮时 默认行为是关闭当前应用程序 我想覆盖此默认行为 以便它导航到我的应用程序中的上一页 经过一些研究 似乎应该可以通过重写 OnBackKeyPress 方法来做到这一点 如下
  • 要 Segue 还是 didSelectRowAtIndexPath?

    下面是我当前正在运行的代码 我有一个带有导航控制器 表格视图控制器和视图控制器的故事板设置 我正在尝试将名称从我为表设置的 NSDictionary 传递到详细视图控制器 我应该使用prepareforsegue还是didselectrow
  • Elasticsearch 对相同文档给出不同的分数

    我有一些具有相同内容的文档 但是当我尝试查询这些文档时 尽管查询的字段包含相同的文本 但我得到了不同的分数 我已经解释了分数 但我无法分析和找到不同分数的原因 我的查询是 curl localhost 9200 acqindex searc
  • 如何在 Node.js 项目中自动执行编译 Twitter Bootstrap 等前端框架的任务?

    如何在 Node js 项目中自动执行编译 Twitter Bootstrap 的任务 我正在编辑 LESS 文件 这些文件编译成 Node js 项目的 Bootstrap 自定义版本 因此我不能只使用在线定制器或预编译的 JavaScr
  • 带有通用列表的 Java 参考作业

    我觉得问这个问题很愚蠢 但我就是 线路List
  • Python WordCloud 遇到 AttributeError: 'list' 对象没有属性 'items'

    当我使用WordCloud函数 fit words 时 我遇到了AttributeError list object has no attribute items 当我使用 generate from frequencies 时它也不起作用
  • Rspec:运行测试时如何抑制警告和通知?

    我之前使用 Mysql 数据库 决定切换到 Postgresql 现在 当我使用 rspec 运行测试时 我收到很多警告和通知 WARNING there is already a transaction in progress NOTIC
  • 在 Windows 中查找相对于另一个的路径

    这个问题应该是显而易见的 但我还没有能够解决它 我需要一个函数 它接受两个参数 每个参数一个文件路径 相对或绝对 并返回一个文件路径 该文件路径是相对于第二个路径 开始 解析的第一个路径 目标 解析的路径可能是相对于当前目录的 也可能是绝对
  • 使用 JavaScript 进行动态 Adsense 插入

    我不敢相信这有多难找到 但即使在谷歌开发者文档中我也找不到它 我需要能够动态地 only使用 JavaScript 插入 adsense 我也在 StackOverflow 上查看过 其他一些人也问过这个问题 但没有回复 希望这将是一个更好
  • Xml命名空间声明:自动替换包名

    我有一个带有多个构建目标的 android 项目 使用 ant 出于测试目的 这些构建目标都有不同的包名称 因此我的包名称是 com mycompany myapp 用于发布构建 和 com mycompany myapp test 用于测
  • 保留文件夹结构 Cocoa Pods

    我通过本教程创建了一个简单且私有的 Pod http pablin org 2013 05 18 cocoapods for internal libraries http pablin org 2013 05 18 cocoapods f
  • Docker运行找不到可执行文件“uwsgi”

    我正在尝试使用 Docker 部署 falcon 应用程序 这是我的 Dockerfile FROM python 2 onbuild Set the working directory to app WORKDIR app Copy th