Проблемы с установкой msodbcsql17 с помощью Docker
У меня есть файл докеров для загрузки кода pyhon в Azure. Работает несколько месяцев, а сегодня вдруг перестал работать. :-(
Соответствующие команды в Dockerfile:
FROM python:3.9.5
:
:
RUN curl https://packages.microsoft.com/keys/microsoft.asc | apt-key add -
RUN curl https://packages.microsoft.com/config/ubuntu/20.04/prod.list > /etc/apt/sources.list.d/mssql-release.list
RUN exit
RUN apt-get update && ACCEPT_EULA=Y apt-get install msodbcsql17
Сообщение об ошибке, которое появилось сегодня:
Err:1 https://packages.microsoft.com/ubuntu/20.04/prod focal/main amd64 msodbcsql17 amd64 17.7.2.1-1
404 Not Found [IP: 104.214.230.139 443]
E: Failed to fetch https://packages.microsoft.com/ubuntu/20.04/prod/pool/main/m/msodbcsql17/msodbcsql17_17.7.2.1-1_amd64.deb 404 Not Found [IP: 104.214.230.139 443]
E: Unable to fetch some archives, maybe run apt-get update or try with --fix-missing?
The command '/bin/sh -c apt-get update && ACCEPT_EULA=Y apt-get install msodbcsql17' returned a non-zero code: 100
2021/06/16 20:50:56 Container failed during run: build. No retries remaining.
failed to run step ID: build: exit status 100
Я считаю, что это может быть связано с перемещением файлов .deb или с тем, что какой-то компьютер в Microsoft не работает?
Хорошим обходным решением может быть загрузка соответствующего пакета msodbcsql17 напрямую, но мне не удалось найти этот пакет в обычных репозиториях?
3 ответа
Кажется, что есть некоторые постоянные проблемы с репозиториями microsoft для некоторых дистрибутивов Linux (включая ubuntu и debian). Не ясно, когда это будет исправлено.
Ответ может быть связан с этим сообщением:https://github.com/dotnet/core/issues/6381
Похоже, что некоторые репозитории Ubuntu сломаны. Надеюсь, это скоро исправят ...
Я буду следить за решением, но у меня такая же проблема, используя:
FROM python:3
ENV PYTHONUNBUFFERED 1
RUN mkdir /code
WORKDIR /code
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 update
RUN ACCEPT_EULA=Y apt-get install -y msodbcsql17
# optional: for bcp and sqlcmd
RUN ACCEPT_EULA=Y apt-get install -y mssql-tools
RUN echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bash_profile
RUN echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bashrc
# optional: for unixODBC development headers
RUN apt-get install -y unixodbc-dev