189 8069 5689

pypi私有仓库怎么利用Docker进行搭建-创新互联

pypi私有仓库怎么利用Docker进行搭建?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。

鼓楼网站制作公司哪家好,找成都创新互联公司!从网页设计、网站建设、微信开发、APP开发、成都响应式网站建设等网站项目制作,到程序开发,运营维护。成都创新互联公司从2013年创立到现在10年的时间,我们拥有了丰富的建站经验和运维经验,来保证我们的工作的顺利进行。专注于网站建设就选成都创新互联公司

一、搭建


1、准备htpasswd.txt文件


该文件内容包含上传包至仓库时验证的用户名和密码


pip install htpasswd
htpasswd -sc htpasswd.txt


2、启动容器


docker run --name pypiserver --restart=always -v /data/pypi/packages:/data/packages -v /root/htpasswd.txt:/data/htpasswd.txt -p 8080:8080 -d pypiserver/pypiserver -P htpasswd.txt packages
#需在宿主机上提前建立好data目录及htpasswd.txt文件


3、设置nginx反向代理


cat /usr/local/nginx/conf/exten/pypi.conf
upstream pypi {
          server 127.0.0.1:8080;
      }
 
server {
 
    listen 80;
    server_name pypi.local.me;
    location / {
          proxy_pass_header Server;
          proxy_set_header Host $http_host;
          proxy_redirect off;
          proxy_set_header X-Real-IP $remote_addr;
          proxy_set_header X-Scheme $scheme;
          proxy_pass    http://pypi;
          }
}

二、使用


1、建立测试项目


# 建立项目目录
mkdir -p linode_example/linode_example
# 建立setup.py
cat linode_example/setup.py
from setuptools import setup
setup(
   name='linode_example',
   packages=['linode_example'], #上传到仓库后的目录,如http://pypi.local.me/linode_example
   description='Hello world enterprise edition',
   version='0.1', # 版本号
   url='http://github.com/example/linode_example',
   author='Linode',
   keywords=['pip','linode','example']
   )
# 该文件内容为说明性内容,可根据自己的包的情况进行设置
 
# 建立__init__.py 主程序
cat linode_example/linode_example/__init__.py
def hello_word():
   print("hello world")
 
# 打包并上传
python3.7 setup.py sdist # 打包,执行完后会在dist目录下有个tar包
twine upload --repository-url http://pypi.local.me dist/* # 上传时需要输入用户名和密码:admin/admin123

2、使用上传至仓库的包


pip install -i http://pypi.local.me --trusted-host pypi.local.me linode_example


打包注意事项:


1、所有需要打包的项目在git仓库中的目录结构必须一致,便于jenkinsfile自动化集成;


2、所有需要打包的项目的setup.py文件必须位于项目根目录下;


3、python使用统一版本,每个项目的版本需要固定,便于迭代。

看完上述内容,你们掌握pypi私有仓库怎么利用Docker进行搭建的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注创新互联行业资讯频道,感谢各位的阅读!


新闻标题:pypi私有仓库怎么利用Docker进行搭建-创新互联
标题路径:http://cdxtjz.cn/article/desjod.html

其他资讯