• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    使用docker+devpi搭建本地pypi源的方法

    前一段时间开发需要经常使用 pip 下载,虽然把 pip 源改成了国内源,但我对速度还是不满意,更为重要的是集成
    测试环境是离线的,要在集成测试环境开发显然需要搭建自己的本地 pip 源。在使用 devpi 之前我曾使用过 pip2pi,但有个 bug 导致离线环境下的 tox 命令总是失败,所以最后采用 devpi 搭建 pip 源。这里使用 docker 部署,方便又快速,如果不小心弄崩了也只需要重新运行 docker 容器就好了。如果你的环境没有安装 docker 可以自行搜素安装方法,比如 docker 社区的文档 install docker。如果你是 Centos 用户,可以使用以下方法安装

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

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

    # 设置 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/
    

    以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

    上一篇:linux搭建squid代理服务器的完整步骤
    下一篇:Linux下使用vsftp搭建FTP服务器(附参数说明)
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    使用docker+devpi搭建本地pypi源的方法 使用,docker+devpi,搭建,本地,