1

我正在使用 alpine:3.7 并尝试安装 python nsenter 包:

FROM alpine:3.7
MAINTAINER blah-blah <blah@blah.com>

RUN echo "http://dl-2.alpinelinux.org/alpine/v3.7/main" >> /etc/apk/repositories && \
    echo "http://dl-3.alpinelinux.org/alpine/v3.7/main" >> /etc/apk/repositories && \
    echo "http://dl-4.alpinelinux.org/alpine/v3.7/main" >> /etc/apk/repositories && \
    echo "http://dl-5.alpinelinux.org/alpine/v3.7/main" >> /etc/apk/repositories

RUN apk --update --no-cache add python py2-pip docker
RUN pip install --upgrade pip setuptools nsenter

它卡在:

 Collecting nsenter>=0.2 
 Downloading https://files.pythonhosted.org/packages/a5/46/1bfe9cca7f2e12cb2d7d9082b14feb785bc63628fb795a34d53ef57a8b93/nsenter-0.2.tar.gz

即使我尝试从容器内安装它:

pip install nsenter -vv
Collecting nsenter
1 location(s) to search for versions of nsenter:
* https://pypi.org/simple/nsenter/
Getting page https://pypi.org/simple/nsenter/
Looking up "https://pypi.org/simple/nsenter/" in the cache
No cache entry available
Starting new HTTPS connection (1): pypi.org
https://files.pythonhosted.org:443 "GET /packages/a5/46/1bfe9cca7f2e12cb2d7d9082b14feb785bc63628fb795a34d53ef57a8b93/nsenter-0.2.tar.gz HTTP/1.1" 200 4324
Downloading https://files.pythonhosted.org/packages/a5/46/1bfe9cca7f2e12cb2d7d9082b14feb785bc63628fb795a34d53ef57a8b93/nsenter-0.2.tar.gz
Downloading from URL https://files.pythonhosted.org/packages/a5/46/1bfe9cca7f2e12cb2d7d9082b14feb785bc63628fb795a34d53ef57a8b93/nsenter-0.2.tar.gz#sha256=876a18cb03de85948e4cd72fd4cfda4879561b7264f5722603f6437d452a25cb (from https://pypi.org/simple/nsenter/)
Ignoring unknown cache-control directive:
Ignoring unknown cache-control directive: immutable
Updating cache with response from "https://files.pythonhosted.org/packages/a5/46/1bfe9cca7f2e12cb2d7d9082b14feb785bc63628fb795a34d53ef57a8b93/nsenter-0.2.tar.gz"
Caching due to etag
Running setup.py (path:/tmp/pip-install-iLC2FC/nsenter/setup.py) egg_info for package nsenter
Running command python setup.py egg_info

我什至尝试从 pypi 存储库https://pypi.org/simple/nsenter/获取 nsenter并用于安装:

python setup.py install

README.rst 说:

Requires Python 2.6 or higher

但是对于安装它只使用 python3/pip3:

Install from PyPI::
sudo pip3 install nsenter

Install from git source::
python3 setup.py install

任何想法如何安装 nsenter 而无需更改我的 python 版本?也许这可能是一个需要在上游打开的错误?

4

1 回答 1

1

问题与基础设施有关!我需要将 --mtu=1450 添加到我的 docker 服务中,因为可能来自 nsenter 的某些依赖项需要更大的数据包......现在它运行成功了!

于 2018-05-04T09:19:45.360 回答