如何在 Alpine Linux Docker Container 中安装“Microsoft Access Driver (*.mdb, *.accdb)”驱动程序
Posted
技术标签:
【中文标题】如何在 Alpine Linux Docker Container 中安装“Microsoft Access Driver (*.mdb, *.accdb)”驱动程序【英文标题】:How to install "Microsoft Access Driver (*.mdb, *.accdb)" driver in Alpine Linux Docker Container 【发布时间】:2021-11-24 18:45:21 【问题描述】:查找所有驱动程序的脚本
我创建了一个脚本来查找所有“pyodbc”驱动程序:
import pyodbc
print([x for x in pyodbc.drivers()])
问题
在我的主机(安装了驱动程序的 Windows)中,当我运行时,我得到所有 x64 驱动程序:
> ['SQL Server', 'ODBC Driver 17 for SQL Server', 'Microsoft Access Driver (*.mdb, *.accdb)', 'Microsoft Excel Driver (*.xls, *.xlsx, *.xlsm, *.xlsb)', 'Microsoft Access dBASE Driver (*.dbf, *.ndx, *.mdx)', 'Microsoft Access Text Driver (*.txt, *.csv)']
但是,当我使用 Docker 时
FROM python:3.8-alpine
# Add dependencies
RUN apk upgrade
RUN apk add --no-cache curl gcc g++ unixodbc-dev
RUN ln -s /usr/include/locale.h /usr/include/xlocale.h
WORKDIR /app
# Install Python dependencies
COPY requirements.txt ./
RUN pip install --upgrade pip
RUN pip install -r requirements.txt
# Run script
COPY find_drivers.py find_drivers.py
CMD [ "python3", "find_drivers.py" ]
未找到驱动程序:
> []
参考文献
Install ODBC driver in Alpine Linux Docker Container在此 Docker 映像中安装“Microsoft Access Driver (*.mdb, *.accdb)”的最佳方法是什么?
【问题讨论】:
【参考方案1】:在这个 [Alpine Linux] Docker 映像中安装“Microsoft Access Driver (*.mdb, *.accdb)”的最佳方法是什么?
你不能。 Microsoft 仅提供适用于 Windows 平台的“Microsoft Access Driver (*.mdb, *.accdb)”(与适用于 Windows、Linux 和 Mac 的 SQL Server 的 ODBC 驱动程序不同)。
这里讨论了一些替代方案:
Working with an Access database in Python on non-Windows platform (Linux or Mac)
【讨论】:
以上是关于如何在 Alpine Linux Docker Container 中安装“Microsoft Access Driver (*.mdb, *.accdb)”驱动程序的主要内容,如果未能解决你的问题,请参考以下文章
VirtualBox中Alpine Linux + Docker安装记录