gpt4 book ai didi

docker - 在docker文件中安装python包

转载 作者:行者123 更新时间:2023-12-02 17:12:57 38 4
gpt4 key购买 nike

在我的 docker 文件中,我想安装 med2image python 包( https://github.com/FNNDSC/med2image )。我使用以下代码:

FROM ubuntu:16.04
RUN apt-get update && apt-get install -y --no-install-recommends \
python3.5 \
python3-pip \
&& \
apt-get clean && \
rm -rf /var/lib/apt/lists/*
RUN pip install nibabel pydicom matplotlib pillow
RUN pip install med2image

但是当我想构建图像时出现以下错误:
Downloading https://files.pythonhosted.org/packages/6f/e5/948b023c7feb72adf7dfb26d90a13c838737bbf52be704f5ddd0878e3264/med2image-1.1.2.tar.gz
Complete output from command python setup.py egg_info:
Sorry, only Python 3.5+ is supported.

----------------------------------------
Command "python setup.py egg_info" failed with error code 1 in /tmp/pip-install-FnNb_S/med2image/
The command '/bin/sh -c pip install med2image' returned a non-zero code: 1

我该怎么办?!

最佳答案

推荐的基础镜像
正如我在评论中所建议的,您可以编写一个 Dockerfile,如下所示:

FROM python:3

RUN pip install --no-cache-dir --upgrade pip && \
pip install --no-cache-dir nibabel pydicom matplotlib pillow && \
pip install --no-cache-dir med2image

CMD ["cat", "/etc/os-release"]
上面的命令示例可以在运行时 ( docker build --pull -t test . && docker run --rm -it test ) 确认此镜像基于 GNU/Linux 发行版“Debian stable”。
通用 Dockerfile模板
最后给出一个全面的答案,请注意,关于 Python 依赖项的一个好的做法是在专用文本文件(按字母顺序)中以声明方式指定它们,因此对于您的示例,您可能需要编写以下文件:

requirements.txt

matplotlib
med2image
nibabel
pillow
pydicom

and use the following generic Dockerfile

FROM python:3

WORKDIR /usr/src/app

COPY requirements.txt ./

RUN pip install --no-cache-dir --upgrade pip && \
pip install --no-cache-dir -r requirements.txt

COPY . .

CMD [ "python", "./your-daemon-or-script.py" ]
更准确地说,这是Docker官方镜像 python 文档中建议的方法。 ,§。 How to use this image

关于docker - 在docker文件中安装python包,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50333650/

38 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com