SQL сервер - Таймаут входа истек (0) (SQLDriverConnect)
Я создал контейнер docker для приложения django и хотел подключиться к MSSQL на моей локальной машине из docker, но не смог подключиться. На локальной машине он работает правильно, когда я пытаюсь получить доступ к нему из docker, он выдает ошибку таймаута. Я пробовал менять хост в строке подключения, но все равно он отражает то же самое. Ошибка, которую я получаю, когда пытаюсь выполнить docker-compose up as
ERROR-log:
conn = Database.connect(connstr,
web_1 | pyodbc.OperationalError: ('HYT00', '[HYT00] [Microsoft][ODBC Driver 17 for SQL Server]Login timeout expired (0) (SQLDriverConnect)')
settings.py -host Я пробовал и с другими ip, но при запуске в локальном режиме также не удалось подключиться
DATABASES = {
"default": {
"ENGINE": "sql_server.pyodbc",
"NAME": "dbnew",
"USER": "user1",
"PASSWORD": "user@1233",
# "Integrated Security":"SSPI",
"HOST": "172.19.179.179",
"PORT": "",
"OPTIONS":
{
"driver": "ODBC Driver 17 for SQL Server",
},
},
}
dockerfile
FROM python:3.8
ENV PYTHONUNBUFFERED 1
WORKDIR /code
#before install pyodbc , we need unixodbc-dev
# RUN apt-get install multiarch-support
# install msodbcsql17
# RUN su
RUN curl https://packages.microsoft.com/keys/microsoft.asc | apt-key add -
RUN curl https://packages.microsoft.com/config/debian/9/prod.list > /etc/apt/sources.list.d/mssql-release.list
RUN exit
RUN wget http://archive.ubuntu.com/ubuntu/pool/main/g/glibc/multiarch-support_2.27-3ubuntu1.4_amd64.deb
RUN apt-get install ./multiarch-support_2.27-3ubuntu1.4_amd64.deb
RUN apt-get update
# RUN ACCEPT_EULA=Y apt-get install -y msodbcsql17
# RUN 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bashrc
# RUN source ~/.bashrc
# optional: for unixODBC development headers
RUN ACCEPT_EULA=Y apt-get install -y msodbcsql17
RUN apt-get install -y unixodbc-dev
#before install pyodbc , we need unixodbc-dev
# RUN apt-get install unixodbc-dev
# RUN curl https://download.microsoft.com/download/e/4/e/e4e67866-dffd-428c-aac7-8d28ddafb39b/msodbcsql17_17.8.1.1-1_amd64.sig
# bin ~/Downloads
# RUN curl http://archive.ubuntu.com/ubuntu/pool/main/g/glibc/multiarch-support_2.27-3ubuntu1.4_amd64.deb
# RUN apt-get install ./multiarch-support_2.27-3ubuntu1.4_amd64.deb
# RUN ACCEPT_EULA=Y apt-get install -y msodbcsql17
RUN apt-get update && apt-get install -y --no-install-recommends \
unixodbc-dev \
unixodbc \
libpq-dev
COPY requirements.txt requirements.txt
RUN pip install -r requirements.txt
COPY . .
CMD ["python3", "manage.py", "runserver", "0.0.0.0:8000"]