运行 Python 在 WSL2 Ubuntu 中使用 Laravel 导致 "modules not found"
Running Python using Laravel inside WSL2 Ubuntu causes "modules not found"
我有一个 WSL2 Ubuntu 设置了 运行 python 脚本所需的一切。
我也在使用 Laravel 应用程序,该应用程序使用 Symfony/Process 到 运行 said-python 脚本。
但是当我 运行 使用 Laravel 应用程序的脚本时,它告诉我未安装该脚本所需的模块。
我确认它安装在我的 Ubuntu 系统中,甚至 运行 使用 CLI 的脚本。
这是我在我的 Laravel 控制器中用于我的过程的内容
$process = new Process(['/bin/python3', base_path() . /resources/python/pythonscript.py']
这就是我用于 CLI 命令的命令
/bin/python3 /var/www/laravel/resources/python/pythonscript.py
(我也可以只使用 python3,但我想确保使用 /bin/python3 有效。)
重申一下,CLI 工作得很好,而 Laravel 控制器给了我一个
ModuleNotFoundError: No module named 'sklearn'
有什么建议吗?
问题是 www-data 组无权访问我安装模块的位置。这是我的默认 $user.
为了解决这个问题,我必须使用 sudo 安装模块。
e.x sudo pip3 install yfinance
不太确定这是否是一个好的解决方案,但这是一个适合我的解决方案。
我有一个 WSL2 Ubuntu 设置了 运行 python 脚本所需的一切。
我也在使用 Laravel 应用程序,该应用程序使用 Symfony/Process 到 运行 said-python 脚本。
但是当我 运行 使用 Laravel 应用程序的脚本时,它告诉我未安装该脚本所需的模块。
我确认它安装在我的 Ubuntu 系统中,甚至 运行 使用 CLI 的脚本。
这是我在我的 Laravel 控制器中用于我的过程的内容
$process = new Process(['/bin/python3', base_path() . /resources/python/pythonscript.py']
这就是我用于 CLI 命令的命令
/bin/python3 /var/www/laravel/resources/python/pythonscript.py
(我也可以只使用 python3,但我想确保使用 /bin/python3 有效。)
重申一下,CLI 工作得很好,而 Laravel 控制器给了我一个
ModuleNotFoundError: No module named 'sklearn'
有什么建议吗?
问题是 www-data 组无权访问我安装模块的位置。这是我的默认 $user.
为了解决这个问题,我必须使用 sudo 安装模块。
e.x sudo pip3 install yfinance
不太确定这是否是一个好的解决方案,但这是一个适合我的解决方案。