温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

如何使用docker+devpi搭建本地pypi源

发布时间:2022-05-31 11:03:03 来源:亿速云 阅读:148 作者:zzz 栏目:大数据

本文小编为大家详细介绍“如何使用docker+devpi搭建本地pypi源”,内容详细,步骤清晰,细节处理妥当,希望这篇“如何使用docker+devpi搭建本地pypi源”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。

如果你是 centos 用户,可以使用以下方法安装

sudo yum update
sudo yum -y install docker
sudo systemctl enable docker
sudo systemctl start docker

接下来使用使用 docker 部署一个 python 本地镜像源,我们可以使用 docker hub 上已有的镜像,我这里选择的是
这个镜像

# 设置 devpi 服务器管理员密码
devpi_password = 123

mkdir -p /src/docker/devpi
mkdir /tmp/wheelhouse

docker run -d --name devpi \
  --publish 3141:3141 \
  --volume /tmp/wheelhouse:/wheelhouse
  --volume /srv/docker/devpi:/data \
  --env=devpi_password=$devpi_password \
  --restart always \
  muccg/docker-devpi

接着先在本地下载好所需的wheel包,requirements.txt文件内容即为我们需要的 python 库列表

pip wheel --wheel-dir /tmp/wheelhouse -r requirements.txt

如果从 pip 源下载的库已经是 wheel 包的话文件将会被直接放在 /tmp/wheelhouse 内,如果是
tar 包,pip 会先 build 出 wheel 包,这可能需要一些时间。下载完成后 wheelhouse 内容类似

ll /tmp/wheelhouse
total 524k
-rwxrwxrwx 1 rookie rookie 155k apr 6 23:40 certifi-2019.3.9-py2.py3-none-any.whl
-rwxrwxrwx 1 rookie rookie 131k apr 6 23:40 chardet-3.0.4-py2.py3-none-any.whl
-rwxrwxrwx 1 rookie rookie 58k apr 6 23:40 idna-2.8-py2.py3-none-any.whl
-rwxrwxrwx 1 rookie rookie 57k apr 6 23:40 requests-2.21.0-py2.py3-none-any.whl
-rwxrwxrwx 1 rookie rookie 116k apr 6 23:40 urllib3-1.24.1-py2.py3-none-any.whl

下载完成后如果本地环境安装了devpi客户端,可以直接上传 wheel 包,不过由于我们在创建容器时已经

把 wheelhouse 文件夹挂载进去,也可以在在容器里直接操作

# 进入容器
docker exec -it -u root devpi bash

# 登陆并上传
devpi use http://<host_ip>:3141/root/public --set-cfg
devpi login root 123
devpi upload --from-dir /wheelhouse

上传完成后可以使用 http://<host_ip>:3141 查看 pip 本地源服务器状态。

若要临时使用可以使用 pip install 的 --index 和 --trusted-host 选项

pip install --index http://<host_ip>:3141/root/public/+simple/ \
      --trusted-host <host_ip>

或者修改 pip.conf 文件永久使用

# vim ~/.pip/pip.conf
[global]
index_url = http://<host_ip>:3141/root/public/+simple/
trusted-host = <host_ip>
[search]
index = http://<host_ip>:3141/root/public/

读到这里,这篇“如何使用docker+devpi搭建本地pypi源”文章已经介绍完毕,想要掌握这篇文章的知识点还需要大家自己动手实践使用过才能领会,如果想了解更多相关内容的文章,欢迎关注亿速云行业资讯频道。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI