在我的M1 macbook pro上运行的Dockerfile文件中,将微软软件包列表添加到apt-get时遇到了问题。我可以在我的旧的windows笔记本上运行它,但是现在在我的mac上,我得到了Unable to locate package msodbcsql17错误。作为一个健全的检查,我也尝试先安装mssql-tools,但也没有找到那个包,所以似乎将这些包添加到apt-get的整个过程都失败了。我能做些什么来让它在m1 mac和使用经典架构的机器上都能工作吗?
FROM python:3.7
WORKDIR /app/repo
RUN mkdir /app/docker_volume
RUN apt-get update \
&& apt-get install unixodbc -y \
&& apt-get install unixodbc-dev -y \
&& apt-get install freetds-dev -y \
&& apt-get install freetds-bin -y \
&& apt-get install tdsodbc -y \
&& apt-get install --reinstall build-essential -y
RUN curl https://packages.microsoft.com/keys/microsoft.asc | apt-key add -
RUN curl https://packages.microsoft.com/config/debian/10/prod.list > /etc/apt/sources.list.d/mssql-release.list
RUN apt-get update
RUN ACCEPT_EULA=Y apt-get install -y msodbcsql17
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
RUN /bin/bash -c "source ~/.bashrc"```发布于 2021-07-15 07:18:18
curl命令获取的包列表引用了您系统的体系结构,由于目前没有适用于arm64体系结构的mssql-tools或msodbcsql17包,因此我收到了unable to locate错误。当前的解决方案是更改Dockerfile文件的第一行,以使用FROM --platform=linux/amd64 python:3.7指定平台
https://stackoverflow.com/questions/68369408
复制相似问题