Enviar pesquisa
Carregar
Python包管理工具介绍
•
1 gostou
•
894 visualizações
Young King
Seguir
Tecnologia
Denunciar
Compartilhar
Denunciar
Compartilhar
1 de 17
Baixar agora
Baixar para ler offline
Recomendados
MySQL aio
MySQL aio
zhaolinjnu
Wtt Vagrant tutorial
Wtt Vagrant tutorial
James Tong
揭秘家用路由器Ch10 sharing
揭秘家用路由器Ch10 sharing
Yi-Jun Zheng
基于yui3的组件开发进阶
基于yui3的组件开发进阶
jay li
Windows 10 install mysql 8.0.16
Windows 10 install mysql 8.0.16
songwenxuan2020
Git初步入門
Git初步入門
recast203
Sequelize實務分享
Sequelize實務分享
Macy Kung
現代 IT 人一定要知道的 Ansible 自動化組態技巧 Ⅱ - Roles & Windows
現代 IT 人一定要知道的 Ansible 自動化組態技巧 Ⅱ - Roles & Windows
Chu-Siang Lai
Recomendados
MySQL aio
MySQL aio
zhaolinjnu
Wtt Vagrant tutorial
Wtt Vagrant tutorial
James Tong
揭秘家用路由器Ch10 sharing
揭秘家用路由器Ch10 sharing
Yi-Jun Zheng
基于yui3的组件开发进阶
基于yui3的组件开发进阶
jay li
Windows 10 install mysql 8.0.16
Windows 10 install mysql 8.0.16
songwenxuan2020
Git初步入門
Git初步入門
recast203
Sequelize實務分享
Sequelize實務分享
Macy Kung
現代 IT 人一定要知道的 Ansible 自動化組態技巧 Ⅱ - Roles & Windows
現代 IT 人一定要知道的 Ansible 自動化組態技巧 Ⅱ - Roles & Windows
Chu-Siang Lai
Koa 正在等一個人
Koa 正在等一個人
Fred Chien
2012 php conf slide PIXNET 如何使用 php
2012 php conf slide PIXNET 如何使用 php
ronnywang_tw
Communication with python_http_module
Communication with python_http_module
dreampuf
Automate with Ansible basic (2/e)
Automate with Ansible basic (2/e)
Chu-Siang Lai
快快樂樂學 Scrapy
快快樂樂學 Scrapy
recast203
BASH 漏洞深入探討
BASH 漏洞深入探討
Tim Hsu
學好 node.js 不可不知的事
學好 node.js 不可不知的事
Ben Lue
Log analytics
Log analytics
itseo
Shell奇技淫巧
Shell奇技淫巧
David Xie
現代 IT 人一定要知道的 Ansible 自動化組態技巧
現代 IT 人一定要知道的 Ansible 自動化組態技巧
Chu-Siang Lai
Node.js长连接开发实践
Node.js长连接开发实践
longhao
Automate with Ansible basic (3/e)
Automate with Ansible basic (3/e)
Chu-Siang Lai
Effective linux.2.(tools)
Effective linux.2.(tools)
wang hongjiang
Mysql展示功能与源码对应
Mysql展示功能与源码对应
zhaolinjnu
Effective linux.1.(commandline)
Effective linux.1.(commandline)
wang hongjiang
Ceph中国社区9.19 Ceph IO 路径 和性能分析-王豪迈05
Ceph中国社区9.19 Ceph IO 路径 和性能分析-王豪迈05
Hang Geng
Ubuntu 下安装 svn 服务器
Ubuntu 下安装 svn 服务器
wensheng wei
輕輕鬆鬆用 Nodejs 寫網路爬蟲
輕輕鬆鬆用 Nodejs 寫網路爬蟲
傑倫 鍾
用最潮的 Java script 盡情開發 kde qt 程式
用最潮的 Java script 盡情開發 kde qt 程式
Fred Chien
不一樣的Web server... coServ
不一樣的Web server... coServ
Ben Lue
The Young King
The Young King
WillT09
Beatles powerpoint
Beatles powerpoint
Stine Rolaj
Mais conteúdo relacionado
Mais procurados
Koa 正在等一個人
Koa 正在等一個人
Fred Chien
2012 php conf slide PIXNET 如何使用 php
2012 php conf slide PIXNET 如何使用 php
ronnywang_tw
Communication with python_http_module
Communication with python_http_module
dreampuf
Automate with Ansible basic (2/e)
Automate with Ansible basic (2/e)
Chu-Siang Lai
快快樂樂學 Scrapy
快快樂樂學 Scrapy
recast203
BASH 漏洞深入探討
BASH 漏洞深入探討
Tim Hsu
學好 node.js 不可不知的事
學好 node.js 不可不知的事
Ben Lue
Log analytics
Log analytics
itseo
Shell奇技淫巧
Shell奇技淫巧
David Xie
現代 IT 人一定要知道的 Ansible 自動化組態技巧
現代 IT 人一定要知道的 Ansible 自動化組態技巧
Chu-Siang Lai
Node.js长连接开发实践
Node.js长连接开发实践
longhao
Automate with Ansible basic (3/e)
Automate with Ansible basic (3/e)
Chu-Siang Lai
Effective linux.2.(tools)
Effective linux.2.(tools)
wang hongjiang
Mysql展示功能与源码对应
Mysql展示功能与源码对应
zhaolinjnu
Effective linux.1.(commandline)
Effective linux.1.(commandline)
wang hongjiang
Ceph中国社区9.19 Ceph IO 路径 和性能分析-王豪迈05
Ceph中国社区9.19 Ceph IO 路径 和性能分析-王豪迈05
Hang Geng
Ubuntu 下安装 svn 服务器
Ubuntu 下安装 svn 服务器
wensheng wei
輕輕鬆鬆用 Nodejs 寫網路爬蟲
輕輕鬆鬆用 Nodejs 寫網路爬蟲
傑倫 鍾
用最潮的 Java script 盡情開發 kde qt 程式
用最潮的 Java script 盡情開發 kde qt 程式
Fred Chien
不一樣的Web server... coServ
不一樣的Web server... coServ
Ben Lue
Mais procurados
(20)
Koa 正在等一個人
Koa 正在等一個人
2012 php conf slide PIXNET 如何使用 php
2012 php conf slide PIXNET 如何使用 php
Communication with python_http_module
Communication with python_http_module
Automate with Ansible basic (2/e)
Automate with Ansible basic (2/e)
快快樂樂學 Scrapy
快快樂樂學 Scrapy
BASH 漏洞深入探討
BASH 漏洞深入探討
學好 node.js 不可不知的事
學好 node.js 不可不知的事
Log analytics
Log analytics
Shell奇技淫巧
Shell奇技淫巧
現代 IT 人一定要知道的 Ansible 自動化組態技巧
現代 IT 人一定要知道的 Ansible 自動化組態技巧
Node.js长连接开发实践
Node.js长连接开发实践
Automate with Ansible basic (3/e)
Automate with Ansible basic (3/e)
Effective linux.2.(tools)
Effective linux.2.(tools)
Mysql展示功能与源码对应
Mysql展示功能与源码对应
Effective linux.1.(commandline)
Effective linux.1.(commandline)
Ceph中国社区9.19 Ceph IO 路径 和性能分析-王豪迈05
Ceph中国社区9.19 Ceph IO 路径 和性能分析-王豪迈05
Ubuntu 下安装 svn 服务器
Ubuntu 下安装 svn 服务器
輕輕鬆鬆用 Nodejs 寫網路爬蟲
輕輕鬆鬆用 Nodejs 寫網路爬蟲
用最潮的 Java script 盡情開發 kde qt 程式
用最潮的 Java script 盡情開發 kde qt 程式
不一樣的Web server... coServ
不一樣的Web server... coServ
Destaque
The Young King
The Young King
WillT09
Beatles powerpoint
Beatles powerpoint
Stine Rolaj
Muhammad ali power point
Muhammad ali power point
wmsbierer
צינה דיז דניאל גת
צינה דיז דניאל גת
אורבניקה - התעוררות עירונית Urbanica - Urban Awakening
The ransom of red chief
The ransom of red chief
Arjan Pula
O.Henry & "The Ransom of Red Chief"
O.Henry & "The Ransom of Red Chief"
mikecress
Destaque
(6)
The Young King
The Young King
Beatles powerpoint
Beatles powerpoint
Muhammad ali power point
Muhammad ali power point
צינה דיז דניאל גת
צינה דיז דניאל גת
The ransom of red chief
The ransom of red chief
O.Henry & "The Ransom of Red Chief"
O.Henry & "The Ransom of Red Chief"
Semelhante a Python包管理工具介绍
OSGi Small Lab
OSGi Small Lab
Ching Yi Chan
Nagios的安装部署和与cacti的整合(linuxtone)
Nagios的安装部署和与cacti的整合(linuxtone)
Yiwei Ma
Ruby on Rails 開發環境建置 for Ubuntu
Ruby on Rails 開發環境建置 for Ubuntu
MarsZ Chen
[Modern Web 2016] 讓你的 PHP 開發流程再次潮起來
[Modern Web 2016] 讓你的 PHP 開發流程再次潮起來
Shengyou Fan
Puppet安装总结
Puppet安装总结
Yiwei Ma
02.python.开发最佳实践
02.python.开发最佳实践
Na Lee
X64服务器 lamp服务器部署标准 new
X64服务器 lamp服务器部署标准 new
Yiwei Ma
2, installation
2, installation
ted-xu
Linuxguide4f2e
Linuxguide4f2e
tb-vertical-guide
LinuxGuide4F2E
LinuxGuide4F2E
sodabiscuit
Oraliux+mysql5单机多实例安装文档
Oraliux+mysql5单机多实例安装文档
xuebao_zx
Linux network monitoring hands-on pratice
Linux network monitoring hands-on pratice
Kenny (netman)
Python packaging
Python packaging
ssuser6f2e1c
Python packaging
Python packaging
ssuser6f2e1c
Honey's Data Dinner#7 webpack 包達人(入門)
Honey's Data Dinner#7 webpack 包達人(入門)
beehivedata
Ruby on Rails 開發環境建置 for Mac
Ruby on Rails 開發環境建置 for Mac
MarsZ Chen
use Nagios on openSUSE 11.4
use Nagios on openSUSE 11.4
welong
康盛创想项目部Linux 服务器部署标准(最新版)
康盛创想项目部Linux 服务器部署标准(最新版)
Yiwei Ma
使用Rpm&yum进行基础软件管理
使用Rpm&yum进行基础软件管理
Jason Zheng
使用Rpm&yum进行基础软件管理
使用Rpm&yum进行基础软件管理
haiyuan ning
Semelhante a Python包管理工具介绍
(20)
OSGi Small Lab
OSGi Small Lab
Nagios的安装部署和与cacti的整合(linuxtone)
Nagios的安装部署和与cacti的整合(linuxtone)
Ruby on Rails 開發環境建置 for Ubuntu
Ruby on Rails 開發環境建置 for Ubuntu
[Modern Web 2016] 讓你的 PHP 開發流程再次潮起來
[Modern Web 2016] 讓你的 PHP 開發流程再次潮起來
Puppet安装总结
Puppet安装总结
02.python.开发最佳实践
02.python.开发最佳实践
X64服务器 lamp服务器部署标准 new
X64服务器 lamp服务器部署标准 new
2, installation
2, installation
Linuxguide4f2e
Linuxguide4f2e
LinuxGuide4F2E
LinuxGuide4F2E
Oraliux+mysql5单机多实例安装文档
Oraliux+mysql5单机多实例安装文档
Linux network monitoring hands-on pratice
Linux network monitoring hands-on pratice
Python packaging
Python packaging
Python packaging
Python packaging
Honey's Data Dinner#7 webpack 包達人(入門)
Honey's Data Dinner#7 webpack 包達人(入門)
Ruby on Rails 開發環境建置 for Mac
Ruby on Rails 開發環境建置 for Mac
use Nagios on openSUSE 11.4
use Nagios on openSUSE 11.4
康盛创想项目部Linux 服务器部署标准(最新版)
康盛创想项目部Linux 服务器部署标准(最新版)
使用Rpm&yum进行基础软件管理
使用Rpm&yum进行基础软件管理
使用Rpm&yum进行基础软件管理
使用Rpm&yum进行基础软件管理
Python包管理工具介绍
1.
python包管理工具介绍 杨昆
y@zhihu.com
2.
进入python的世界
Python如何管理它的软件? egg是python组件的基本单位, 类似java中的jar包,ruby中 的gem。 easy_install/pip 即是python的 apt-get。 $easy_install xxx $pip install xxx
3.
egg的结构 $ tree hello hello ├──
hello │ └── __init__.py ├── hello.egg-info │ ├── PKG-INFO │ ├── SOURCES.txt │ ├── dependency_links.txt │ ├── entry_points.txt │ ├── not-zip-safe │ └── top_level.txt ├── setup.cfg └── setup.py
4.
包的依赖关系 $ cat setup.py from
setuptools import setup, find_packages setup(name='hello', version=version, ... keywords='', author='', install_requires=[ 'tornado', 'mysql-python', 'cherrypy', ], ... )
5.
用namespace来组织你的包 setup.py ~~~~~~~~~~~
$ tree fly.skels setup( ... fly.skels/ namespace_packages=['fly'], ├── README.rst ├── fly ) │ ├── __init__.py │ └── skels │ └── __init__.py ├── fly.skels.egg-info ├── setup.cfg └── setup.py
6.
使用virtualenv和pip (sandbox) $ pip
install -r requirements.txt (sandbox) $ cat requirements.txt simplejson redis==2.0.0 -e svn+http://svn.myproject.org/svn/MyProject/trunk#egg=MyProject -e git://git.myproject.org/MyProject.git#egg=MyProject tornado sqlalchemy
7.
virtualenvwrapper ● 创建虚拟环境
$ mkvirtualenv testenv ● 在多个虚拟环境之间切换 $ lsvirtualenv sandbox testenv $ workon sandbox (sandbox)$
8.
virtualenv的问题 ● 多版本软件管理混乱 ● pip安装可能会失败,
easy_install不够灵活 ● 重复下载,安装,在多项目及有c包的时候耗时较长 ● 还是需要手动构建环境
9.
认识buildout ● 从一个配置文件,可以构建整个环境, wirte
once, deploy often。 类似于java中的maven ● python包版本控制 ● 利用系统中已有的软件,无需重复下载安装 ● 各种recipe用于支持开发、部署等
10.
运行buildout $ python bootstrap.py $
./bin/buildout
11.
pin versions [buildout] versions =
versions [versions] tornado = 2.3 sqlalchemy = 0.7.8 hiredis = 0.1.1 flask = 0.9
12.
pin versions [buildout] extends =
http://mirror.in.zhihu.com/buildout/0.1/version.cfg versions = versions
13.
multiple configuration [buildout] extends =
etc/base.cfg etc/version.cfg etc/supervisor.cfg
14.
Install thirdparty software [zeromq] recipe
= zc.recipe.cmmi url = http://download.zeromq.org/zeromq-2.1.6.tar.gz
15.
install thirdparty software [curl] recipe
= hexagonit.recipe.cmmi url = http://curl.haxx.se/download/curl-7.21.3.tar.bz2 md5sum = 5b57fee22090b5c43a6886fdd35af2ce configure-options = --disable-ldap --disable-ldaps --disable-rtsp --disable-proxy --disable-dict environment = PATH=${pkgconfig:location}/bin:%(PATH)s PKG_CONFIG_PATH=${openssl:location}/lib/pkgconfig LDFLAGS=-Wl,-rpath -Wl,${zlib:location}/lib -Wl,-rpath -Wl,${openssl: location}/lib
16.
私有pypi ● localshop ● pypiserver
17.
Skeleton tool http://pypi.python.org/pypi/fly.skels
Baixar agora