ffmpeg: not found (Conda Env + Gunicorn + Nginx)



我已经安装了ffmpeg,可以从命令行运行它。我已经安装了anaconda,which ffmpeg命令的结果不同,如下所示:

  • /usr/bin/ffmpeg(base环境)
  • /root/anaconda3/envs/myenv/bin/ffmpeg(myenv)

python app.py-应用程序使用Flask。我已经在本地主机上测试过了,它的工作正常。

运行gunicorn仍然在本地工作

当我使用Nginx部署它时这行不通。它找不到ffmpeg。我得到错误gunicorn[23436]: /bin/sh: 1: ffmpeg: not found.

在python文件中的用法如下:subprocess.call('/root/anaconda3/envs/myenv/bin/ffmpeg ...)(我尝试了ffmpeg,完整路径和蟒蛇路径-仍然没有成功)

我怀疑有一些关于Nginx的东西我错过了,它是否需要对可执行文件进行特殊配置?服务器配置如下:

server {
listen 80;
server_name x.x.x.x;
location / {
include proxy_params;
proxy_pass http://unix:/home/myapp/myapp.sock;
client_max_body_size 30M;
}
}

我已经安装了ffmpegpip,但后来我删除了它。它与错误没有任何关系,因为我可以在本地运行它而不会出现问题。

我通过编写服务和提供环境目录来解决这个问题

Environment="PATH=/root/anaconda3/bin" 

紧随其后
ExecStart=/root/anaconda3/envs/<app-name>/bin/gunicorn --workers 3 --bind unix:<app-name>.sock -m 007 wsgi:app

相关内容

  • 没有找到相关文章

最新更新