如何使用Docker搭建pypi私有倉庫
一、搭建
1、準(zhǔn)備htpasswd.txt文件
該文件內(nèi)容包含上傳包至倉庫時(shí)驗(yàn)證的用戶名和密碼
pip install htpasswd
htpasswd -sc htpasswd.txt <username>
2、啟動(dòng)容器
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
#需在宿主機(jī)上提前建立好data目錄及htpasswd.txt文件
3、設(shè)置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、建立測試項(xiàng)目
# 建立項(xiàng)目目錄 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', # 版本號(hào) url='http://github.com/example/linode_example', author='Linode', keywords=['pip','linode','example'] ) # 該文件內(nèi)容為說明性內(nèi)容,可根據(jù)自己的包的情況進(jìn)行設(shè)置 # 建立__init__.py 主程序 cat linode_example/linode_example/__init__.py def hello_word(): print("hello world") # 打包并上傳 python3.7 setup.py sdist # 打包,執(zhí)行完后會(huì)在dist目錄下有個(gè)tar包 twine upload --repository-url http://pypi.local.me dist/* # 上傳時(shí)需要輸入用戶名和密碼:admin/admin123
2、使用上傳至倉庫的包
pip install -i http://pypi.local.me --trusted-host pypi.local.me linode_example
打包注意事項(xiàng):
1、所有需要打包的項(xiàng)目在git倉庫中的目錄結(jié)構(gòu)必須一致,便于jenkinsfile自動(dòng)化集成;
2、所有需要打包的項(xiàng)目的setup.py文件必須位于項(xiàng)目根目錄下;
3、python使用統(tǒng)一版本,每個(gè)項(xiàng)目的版本需要固定,便于迭代。
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- 從零搭建docker私有倉庫的步驟
- docker私有倉庫的搭建和使用詳解
- 搭建Docker私有倉庫(自簽名方式)
- 詳解docker私有倉庫搭建與使用實(shí)戰(zhàn)
- Docker搭建私有倉庫(registry與Harbor)的實(shí)現(xiàn)
- docker私有倉庫harbor搭建過程
- Docker搭建私有倉庫之Harbor的步驟
- Harbor搭建Docker私有倉庫的實(shí)現(xiàn)方法
- 如何搭建配置Docker私有倉庫的實(shí)現(xiàn)步驟
- Docker容器搭建本地私有倉庫詳情
- 一文教會(huì)你如何高效地搭建Docker私有倉庫
- docker搭建本地私有倉庫的實(shí)現(xiàn)
相關(guān)文章
Docker核心組件之聯(lián)合文件系統(tǒng)詳解
這篇文章主要為大家介紹了Docker核心組件之聯(lián)合文件系統(tǒng)詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-04-04Docker如何部署SQL?Server?2017?Always?On集群
這篇文章主要介紹了Docker如何部署SQL?Server?2017?Always?On集群問題,具有很好的參考價(jià)值,希望對大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-07-07Docker容器搭建運(yùn)行python的深度學(xué)習(xí)環(huán)境的方法
本文主要介紹了Docker容器搭建運(yùn)行python的深度學(xué)習(xí)環(huán)境的方法,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-10-10docker安裝elastic?search的詳細(xì)過程
這篇文章主要介紹了docker安裝elastic?search的相關(guān)知識(shí),本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-06-06淺談docker --privileged=true參數(shù)作用
這篇文章主要介紹了淺談docker --privileged=true參數(shù)作用,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-12-12docker容器運(yùn)行成功但無法訪問的原因分析及解決方案(以Tomcat為例親測有效)
這篇文章主要介紹了docker容器運(yùn)行成功但無法訪問的原因分析及對應(yīng)解決方案(以Tomcat為例親測有效),文中通過圖文結(jié)合的方式介紹的非常詳細(xì),具有一定的參考價(jià)值,需要的朋友可以參考下2024-03-03docker搭建CMS點(diǎn)播系統(tǒng)帶播放器功能
熟悉docker的童鞋都知道,安裝是非常的便利的,也可以在線體驗(yàn)的,今天通過本文給大家介紹docker搭建CMS點(diǎn)播系統(tǒng)帶播放器功能,感興趣的朋友跟隨小編一起看看吧2021-05-05Docker安裝jenkins實(shí)現(xiàn)微服務(wù)多模塊打包的示例代碼
本文主要介紹了Docker安裝jenkins實(shí)現(xiàn)微服務(wù)多模塊打包的示例代碼,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2022-07-07