Mit*_*mer 6 python django odbc azure oryx
我正在尝试在 Linux 中的 Azure 应用服务上运行 Django (3.0) 应用程序,并连接到 Azure SQL 数据库。在我的暂存应用程序服务实例中,这工作得很好,但是,当我在不同的 Azure 帐户上设置生产实例时,我的 Django 应用程序无法再访问数据库。
当我将 ODBC 驱动程序 17 硬编码到数据库设置中时,我在 Oryx 构建日志中收到此错误:
pyodbc.Error: ('01000', "[01000] [unixODBC][Driver Manager]Can't open lib 'ODBC Driver 17 for SQL Server' : file not found (0) (SQLDriverConnect)")
Run Code Online (Sandbox Code Playgroud)
当我切换到此处建议的非硬编码版本时,我收到此错误:
'driver': sorted(pyodbc.drivers()).pop(),
IndexError: pop from empty list
Run Code Online (Sandbox Code Playgroud)
如何在 Azure 应用服务上安装 ODBC 驱动程序?
编辑:我没有使用 Docker 部署选项。我直接从 Github 部署源代码。
我已经测试过它并且它对我有用。
打开 ssh 连接到您的 Web 应用程序并运行以下命令:-
apt-get update
apt-get install g++
apt-get install unixodbc-dev
pip install pyodbc
然后我们就可以使用隐私模式,或者清除缓存后访问网站。你可以尝试多刷新几次,你会发现网站恢复正常了。
前面我说过可以尝试使用venv,我测试后发现不需要使用它。按照我的步骤运行命令,你的webapp就ok了。
| 归档时间: |
|
| 查看次数: |
2731 次 |
| 最近记录: |