和/或您可以使用 pymssql==2.1.1,如果您在部署配置中添加以下 docker 步骤(使用 Environments 或 ContainerImages - 首选是 Environments):
from azureml.core import Environment
from azureml.core.environment import CondaDependencies
conda_dep = CondaDependencies()
conda_dep.add_pip_package('pymssql==2.1.1')
myenv = Environment(name="mssqlenv")
myenv.python.conda_dependencies=conda_dep
myenv.docker.enabled = True
myenv.docker.base_dockerfile = 'FROM mcr.microsoft.com/azureml/base:latest\nRUN apt-get update && apt-get -y install freetds-dev freetds-bin vim gcc'
myenv.docker.base_image = None
或者,如果您使用的是 ContainerImage 类,您可以添加这些 Docker 步骤
from azureml.core.image import Image, ContainerImage
image_config = ContainerImage.image_configuration(runtime= "python", execution_script="score.py", conda_file="myenv.yml", docker_file="Dockerfile.steps")
# Assuming this :
# RUN apt-get update && apt-get -y install freetds-dev freetds-bin vim gcc
# is in a file called Dockerfile.steps, it should produce the same result.
有关我如何使用 Estimator Step 和自定义 docker 容器完成此操作的更多详细信息,请参阅此答案。您可以使用此 Dockerfile 在本地为该 Estimator 步骤创建一个 Docker 容器(如果您只是使用在管道之外运行的 Estimator,则无需这样做):
FROM continuumio/miniconda3:4.4.10
RUN apt-get update && apt-get -y install freetds-dev freetds-bin gcc
RUN pip install Cython
有关更多详细信息,请参阅此帖子:使用自定义 docker 图像在管道中使用估算器。希望有帮助!