Windows 环境下基于 nginx 的本地 PyPI 源的搭建:

1.登录 nginx 官网,下载安装包
下载稳定版,并解压缩。

2.启动 nginx 服务
以管理员身份启动 nginx.exe。 
访问 localhost,出现如下页面即证明 nginx 安装并启动成功。
3.安装 pip2pi 工具
pip install pip2pi
4.创建软件包仓库目录
假设创建软件包仓库目录为 C:\Python27\soft\pypi.zsz.net
5.下载软件包并建立索引
下载软件包并建立索引有两种方式,分别如下。
a.使用 pip2tgz 及 dir2pi 命令分开执行
①.下载软件包
注意:通过 pip2tgz 命令可以下载对应的软件包,应下载至软件目录仓库下。
(1).软件包单个下载
假设下载 celery(3.1.23)版本,则命令如下
# pip2tgz C:\Python27\soft\pypi.zsz.net celery==3.1.23
(2).软件包批量下载
按如下格式编辑软件包列表 requirements.txt
Flask==0.11.1
Flask-Mail==0.9.1
随后,使用如下命令进行批量下载。

# pip2tgz C:\Python27\soft\pypi.zsz.net -r requirements.txt

②.建立索引
注意:通过 dir2pi 命令将目录中的软件包创建索引。
为软件包仓库目录 C:\Python27\soft\pypi.zsz.net 创建索引,命令如下。

# dir2pi --normalize-package-names C:\Python27\soft\pypi.zsz.net

注意:需加入 --normalize-package-names 修饰,这样能格式化命名不符合规范的软件包,使其可以被正常识别。

b.使用 pip2pi 命令统一执行

注意:pip2pi 将会下载所需的软件包,随后为存在的软件包创建索引。

(1).软件包单个下载假设下载 celery(3.1.23)版本,则命令如下
# pip2pi --also-get-source --normalize-package-names C:\Python27\soft\pypi.zsz.net celery==3.1.23

注意:需加入 --also-get-source 修饰,除了下载 wheel、eggs 等格式的软件包外,还讲下载软件包的源文件,从而确保不同平台上的使用
注意:需加入 --normalize-package-names 修饰,这样能格式化命名不符合规范的软件包,使其可以被正常识别。

(2).软件包批量下载

按如下格式编辑软件包列表 requirements.txt

Flask==0.11.1

Flask-Mail==0.9.1

随后,使用如下命令进行批量下载。

# pip2pi --also-get-source --normalize-package-names C:\Python27\soft\pypi.zsz.net -r requirements.txt

注意:需加入 --also-get-source 修饰,除了下载 wheel、eggs 等格式的软件包外,还讲下载软件包的源文件,从而确保不同平台上的使用
注意:需加入 --normalize-package-names 修饰,这样能格式化命名不符合规范的软件包,使其可以被正常识别。

6.配置 nginx 服务

在 nginx 的 conf 目录下,修改 nginx.conf。
例如:为了在本机上搭建 PyPI 源,且网站根路径为 C:\Python27\soft\pypi.zsz.net,则 nginx,conf 的内容可类似如下。
worker_processes  1;
events {
    worker_connections  1024;
}
http {
    include       mime.types;
    default_type  application/octet-stream;
    log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '  #日志格式
                      '$status $body_bytes_sent "$http_referer" '
                      '"$http_user_agent" "$http_x_forwarded_for"';
    server {
        listen       80;
        server_name localhost; #服务器名
        root C:\Python27\soft\pypi.zsz.net; #网站根目录路径
        access_log  logs/host.access.log  main; #开启登录日志
        location / {
            autoindex on; #列出整个目录
            autoindex_exact_size off; #关闭显示出文件的确切大小
            autoindex_localtime on; #显示的文件时间为GMT时间
            limit_rate 200k; #限制传输速度为200k
        }
    }
}
7.重启 nginx 服务
终止 nginx.exe 进程,并重新执行步骤 2。
访问 http://pypi.zsz.net/simple,出现如下页面即证明 PyPI 本地源配置成功。
 
Windows 环境下基于 nginx 的本地 PyPI 源的使用:
使用类似如下命令,利用本地 PyPI 源安装软件包。注意:其安装方式与利用外部源安装一致,可参考《PyPI 官方第三方库仓库安装工具 pip》。
# pip install --index http://pypi.zsz.net/simple --trusted-host=pypi.zsz.net celery==3.1.23
注意:当配置的源为 http 而非 https 时,需要加入 --trusted-host 描述,确保主机被信任,否则将无法使用本地 PyPI 源安装软件包。
注意:当使用域名解析本地 PyPI 源时,应确保 DNS 解析正确。
 
Windows 环境下基于 nginx 的本地 PyPI 源软件包的维护:
1.使用 pip2tgz 下载 dir2pi 更新软件包索引目录
a.下载软件包
注意:通过 pip2tgz 命令可以下载对应的软件包,应下载至软件目录仓库下。
(1).软件包单个下载
假设下载 celery(3.1.23)版本,则命令如下
# pip2tgz C:\Python27\soft\pypi.zsz.net celery==3.1.23
(2).软件包批量下载
按如下格式编辑软件包列表 requirements.txt
Flask==0.11.1
Flask-Mail==0.9.1
随后,使用如下命令进行批量下载。
# pip2tgz C:\Python27\soft\pypi.zsz.net -r requirements.txt
b.更新索引
注意:通过 dir2pi 命令将目录中的软件包更新索引。
为软件包仓库目录 C:\Python27\soft\pypi.zsz.net 更新索引,命令如下。
# dir2pi --normalize-package-names C:\Python27\soft\pypi.zsz.net
注意:需加入 --normalize-package-names 修饰,这样能格式化命名不符合规范的软件包,使其可以被正常识别。
2.使用 pip2pi 下载并更新软件包索引目录
注意:pip2pi 将会下载所需的软件包,随后为新增的软件包更新索引。
(1).软件包单个下载
假设下载 celery(3.1.23)版本,则命令如下
# pip2pi --also-get-source --normalize-package-names C:\Python27\soft\pypi.zsz.net celery==3.1.23
注意:需加入 --also-get-source 修饰,除了下载 wheel、eggs 等格式的软件包外,还讲下载软件包的源文件,从而确保不同平台上的使用。
注意:需加入 --normalize-package-names 修饰,这样能格式化命名不符合规范的软件包,使其可以被正常识别。
(2).软件包批量下载
按如下格式编辑软件包列表 requirements.txt
Flask==0.11.1
Flask-Mail==0.9.1
随后,使用如下命令进行批量下载。
# pip2pi --also-get-source --normalize-package-names C:\Python27\soft\pypi.zsz.net -r requirements.txt
注意:需加入 --also-get-source 修饰,除了下载 wheel、eggs 等格式的软件包外,还讲下载软件包的源文件,从而确保不同平台上的使用。
注意:需加入 --normalize-package-names 修饰,这样能格式化命名不符合规范的软件包,使其可以被正常识别。
3.手动下载并使用 dir2pi 更新软件包索引目录
a.下载软件包
手动下载软件包文件,并将其存放至软件包仓库目录下。
b.更新索引
注意:通过 dir2pi 命令将目录中的软件包更新索引。
为软件包仓库目录 C:\Python27\soft\pypi.zsz.net 更新索引,命令如下。
# dir2pi --normalize-package-names C:\Python27\soft\pypi.zsz.net
注意:需加入 --normalize-package-names 修饰,这样能格式化命名不符合规范的软件包,使其可以被正常识别。

Windows 环境下基于 nginx 的本地 PyPI 源的更多相关文章

  1. windows环境下基于nginx搭建rtmp服务器

    基于nginx搭建rtmp服务器需要引入rtmp模块,引入之后需重新编译nginx linux环境几个命令行就能实现编译,笔者未尝试,网上有很多教程. windows环境还需要安装一系列的编译环境,例 ...

  2. php-cgi和php-fpm,Windows环境下解决Nginx+php并发访问阻塞问题。

    php-cgi 是运行php,php-fpm是守护php-cgi进程 nginx配置目录运行php        location  ~ \.php$        {                 ...

  3. CentOS 环境下基于 Nginx uwsgi 搭建 Django 站点

    因为我的个人网站 restran.net 已经启用,博客园的内容已经不再更新.请访问我的个人网站获取这篇文章的最新内容,CentOS 环境下基于 Nginx uwsgi 搭建 Django 站点 以下 ...

  4. Linux和Windows环境下安装Nginx

    Nginx的安装 windows环境下安装Nginx 安装 Nginx 的下载地址如下: http://nginx.org/en/download.html 选择时尽量选择 Stable 稳定版本,点 ...

  5. Windows环境下使用Nginx搭建负载均衡

    前言 最近没有什么事情,喜欢总结并学习东西!前几天写来一个Session共享,那么我们为什么需要Session共享?因为我们的应用程序分布在多个服务器上,为了合理分配用户的请求,就需要用到负载均衡技术 ...

  6. windows环境下安装nginx

    (1)下载 官网:http://nginx.org/en/docs/windows.html 下载:http://nginx.org/en/docs/windows.html 点击:nginx/Win ...

  7. Windows 环境下基于 Redis 的 Celery 任务调度模块的实现

    搭建环境: Windows-x64 10 Celery 3.1.23 Celery-with-redis 3.0 Redis-win32-win64 2.4.5   实现步骤: 1.安装 Redis ...

  8. 在windows环境下基于sublime text3的node.js开发环境搭建

    首先安装sublime text3,百度一堆,自己找吧.理论上sublime text2应该也可以.我只能说一句:这个软件实在是太强悍了. 跨平台,丰富的插件体系,加上插件基本上就是一个强悍的ide了 ...

  9. windows环境下基于pycharm安装Redis出现的两个错误解决方案

    说明:下面给出的两个链接是解决安装和使用Redis的时候遇到的两个问题参考的博客网址,本文有解释不清楚的地方可以原博客查看,侵权删! Q1参考链接-https://blog.csdn.net/maqu ...

随机推荐

  1. SRM588

    250: 有n首歌每首歌有duration和tone,连续唱m首歌会消耗每首歌的duration以及相邻两首歌的tone的差的绝对值的和,给个T,问说在T时间内最对能唱多少歌. 将歌按tone排序后发 ...

  2. RabbitMQ安装和配置

    RabbitMQ: MQ:message queue.MQ全称为Message Queue, 消息队列(MQ)是一种应用程序对应用程序的通信方法.应用程序通过读写出入队列的消息(针对应用程序的数据)来 ...

  3. 排查Java线上服务故障的方法和实例分析

    前言 作为在线系统负责人或者是一个技术专家,你可能刚刚接手一个项目就需要处理紧急故障,或者被要求帮忙处理一些紧急的故障,这个时候的情景是: (1)你可能对这个业务仅仅是听说过,而不怎么真正了解: (2 ...

  4. java ServerSocket服务端编程

    public class Test { public static void main(String[] args) throws Exception{ //1. 构造ServerSocket实例,指 ...

  5. tlplayer 所有平台版本支持水印叠加

    tlplayer支持视频渲染前水印叠加,各个系统版本同样支持. 联系方式:weinyzhou86@gmail.com QQ:514540005 版权所有,禁止转载. 发布自:http://blog.c ...

  6. poj 2409 Let it Bead && poj 1286 Necklace of Beads(Polya定理)

    题目:http://poj.org/problem?id=2409 题意:用k种不同的颜色给长度为n的项链染色 网上大神的题解: 1.旋转置换:一个有n个旋转置换,依次为旋转0,1,2,```n-1. ...

  7. poj 3126 Prime Path( bfs + 素数)

    题目:http://poj.org/problem?id=3126 题意:给定两个四位数,求从前一个数变到后一个数最少需要几步,改变的原则是每次只能改变某一位上的一个数,而且每次改变得到的必须是一个素 ...

  8. JXL读取Excel日期时间不准确

    XL读取Excel日期时间多出了8个小时. Cell c = rs.getCell(j, i);                     if (c.getType() == CellType.DAT ...

  9. (三)学习CSS之opacity 属性

    参考:http://www.w3school.com.cn/cssref/pr_opacity.asp opacity 属性设置元素的不透明级别. 所有浏览器都支持 opacity 属性. 注释:IE ...

  10. oracle server配置:监听程序未启动或数据库服务未注册到该监听程序

    第一次安装oracle时,时完全没有任何问题的, 但是当我去配置oracle_home时,误按之下进入了Database Configuration Assistant, 然后配置已有的一个数据库,就 ...