欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

docker搭建PyPI服务器

程序员文章站 2022-05-07 23:07:52
...

运行 docker 服务器

首先创建服务器文件存放目录(如 pypi),进入目录。

使用镜像 codekoala/pypi 启动 pypi-server 服务器,docker-compose 如下:

version: '3'
services:
  pypi:
    image: codekoala/pypi
    volumes:
      - $PWD:/srv/pypi
    container_name: pypi
    ports:
      - 9527:80

使用如下命令启动:

$ docker-compose up -d

添加用户

使用 htpasswd 添加用户:

$ htpasswd -c -s /htpasswd [username]

两次输入密码后创建用户成功。

此时已经可以访问服务器:http://10.202.40.95:9527。注意要把 IP 换成自己的服务器 IP。

如果在 CentOS7 下没有 htpasswd,则需要使用 sudo yum install httpd-tools 进行安装。

使用方法

上传 package

  1. 配置 ~/.pypirc,为了不用每次上传输入账号密码和仓库 URL。格式如下:

    [distutils]
    index-servers =
        pypi
        pypitest
        internal
    
    [pypi]
    username: xxxxx
    password: xxxxx
    
    [pypitest]
    repository: https://test.pypi.org/legacy/
    username: xxxxx
    password: xxxxx
    
    [internal]
    repository: http://10.202.40.95:9527
    username: xxxxx
    password: xxxxx
    
  2. 使用 twine 上传

    $ twine upload dist/* -r internal
    

    关于 Python 打包和分发参考:https://blog.csdn.net/chenfeidi1/article/details/80873979

使用仓库安装 package

$ pip install [package-name] -i http://10.202.40.95:9527 --trusted-host 10.202.40.95

因为是 HTTP 连接,所以需要选项 --trusted-host