Я пытаюсь подключиться к базе данных SQL Server в Azure через драйвер ODBC с помощью Docker. Я следую официальному документу от Microsoft (https://docs.microsoft.com/en-us/sql/connect/odbc/linux-mac/installing-the-microsoft-odbc-driver-for-sql-server?view=sql-server-2017#ubuntu-1604-1), но получаю сообщение об ошибке:
Ошибка: [unixODBC] [Диспетчер драйверов] Не удается открыть lib '/opt/microsoft/msodbcsql/lib64/libmsodbcsql-13.1.so.9.2': файл не найден
Ошибки:
сообщение: '[unixODBC] [Диспетчер драйверов] Не могу открыть lib \' / opt / microsoft / msodbcsql / lib64 / libmsodbcsql-13.1.so.9.2 \ ': файл не найден', состояние: '01000'
ошибка: '[node-odbc] SQL_ERROR'
'[unixODBC] [Driver Manager] Не могу открыть lib \' / opt / microsoft / msodbcsql / lib64 / libmsodbcsql-13.1.so.9.2 \ ': файл не найден', состояние: '01000'
Когда я проверяю, установлен ли драйвер с помощью odbcinst -j
, я получаю:
unixODBC 2.3.7
DRIVERS............: /etc/odbcinst.ini
SYSTEM DATA SOURCES: /etc/odbc.ini
FILE DATA SOURCES..: /etc/ODBCDataSources
USER DATA SOURCES..: /root/.odbc.ini
SQLULEN Size.......: 8
SQLLEN Size........: 8
SQLSETPOSIROW Size.: 8
В odbcinst.ini
У меня есть:
[ODBC Driver 13 for SQL Server]
Description=Microsoft ODBC Driver 13 for SQL Server
Driver=/opt/microsoft/msodbcsql/lib64/libmsodbcsql-13.1.so.9.2
UsageCount=1
Любой намек, что я могу пропустить? Локально на моем Mac я могу подключиться к БД и выполнить запрос, но не могу использовать Docker.
Dockerfile:
FROM node:10
RUN apt-get update
RUN apt-get install --yes curl
RUN curl https://packages.microsoft.com/keys/microsoft.asc | apt-key add -
RUN curl https://packages.microsoft.com/config/ubuntu/16.04/prod.list > /etc/apt/sources.list.d/mssql-release.list
RUN apt-get install -y build-essential
RUN apt-get install -y make
RUN apt-get install -y apt-transport-https
RUN apt-get update && ACCEPT_EULA=Y apt-get install -y msodbcsql unixodbc unixodbc-dev
RUN echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bash_profile
RUN echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bashrc
# RUN source ~/.bashrc
RUN apt-get install -y unixodbc-dev
ADD . /var/www/app
WORKDIR /var/www/app
RUN npm install && \
npm cache clean --force
RUN npm run build
EXPOSE 3000:80