pythoneer 的三大神器—fabric
2016-05-20 16:40
106 查看
1. virtualenv 用来建立一个虚拟的python环境,一个专属于项目的python环境。用virtualenv 来保持一个干净的环境非常有用。
2. pip 用来解决项目依赖问题。将项目所有依赖的第三方库写在一个requirements.txt 中用pip 批量安装。一般和virtualenv 配合使用,将所有包安装在virtualenv 的环境中。
3. fabric 用来自动化远程部署项目,非常的方便。可以根据需要在本地、远程依次执行一系列shell 命令、程序等。比如从代码库更新代码,执行数据迁移脚本,重启服务进程,完成自动化的部署。
Fabric是Python中一个非常强大的批量远程管理和部署工具,常用于在多个远程PC上批量执行SSH任务.
常见的使用方法大概总结如下:
1, 首先,要将批量执行的任务写入到一个fabfile.py中,
?
以上就是一个简单的fabfile.py, 其中定义的函数均对应一个fab中的可执行命令.
其中有两个小的注意事项,
A,在远程机器的run.sh中如果要执行一些非系统常见的工具,最好指定为绝对路径. 且可以适当地使用nohup的方式.
B,执行其他脚本或者命令后最好加上sleep,以防止Fabric过早地关闭与远程PC连接的session,而导致执行任务失败.
2, 执行过程: fabric执行会默认选取当前目录下的fabfile.py文件,
fab clean
fab pull
fab robot:hosts="192.168.1.115",device=5560
可以通过hosts参数给fabric传入指定的远程PC, 该hosts参数的优先级比env.hosts的要高.
也可以给fab中的命令传递参数,如device.
此外,还可以通过fab -f otherFabFile.py clean来指定其他的fabric文件.
以上,只是一些简单的用法,如果需要更高级的用法,可以关注该项目的github主页 https://github.com/fabric/fabric.
2. pip 用来解决项目依赖问题。将项目所有依赖的第三方库写在一个requirements.txt 中用pip 批量安装。一般和virtualenv 配合使用,将所有包安装在virtualenv 的环境中。
3. fabric 用来自动化远程部署项目,非常的方便。可以根据需要在本地、远程依次执行一系列shell 命令、程序等。比如从代码库更新代码,执行数据迁移脚本,重启服务进程,完成自动化的部署。
Fabric是Python中一个非常强大的批量远程管理和部署工具,常用于在多个远程PC上批量执行SSH任务.
常见的使用方法大概总结如下:
1, 首先,要将批量执行的任务写入到一个fabfile.py中,
?
其中有两个小的注意事项,
A,在远程机器的run.sh中如果要执行一些非系统常见的工具,最好指定为绝对路径. 且可以适当地使用nohup的方式.
B,执行其他脚本或者命令后最好加上sleep,以防止Fabric过早地关闭与远程PC连接的session,而导致执行任务失败.
2, 执行过程: fabric执行会默认选取当前目录下的fabfile.py文件,
fab clean
fab pull
fab robot:hosts="192.168.1.115",device=5560
可以通过hosts参数给fabric传入指定的远程PC, 该hosts参数的优先级比env.hosts的要高.
也可以给fab中的命令传递参数,如device.
此外,还可以通过fab -f otherFabFile.py clean来指定其他的fabric文件.
以上,只是一些简单的用法,如果需要更高级的用法,可以关注该项目的github主页 https://github.com/fabric/fabric.
相关文章推荐
- Python 简单快速折线图,绘图、报表 教程
- Python读取ini文件、操作mysql、发送邮件实例
- pythoneer 的三大神器—pip入门基础教程
- python简介-copy
- python3 requests模块安装
- selenium+python笔记10
- pythoneer 的三大神器—Virtualenv入门基础教程
- Ubuntu12.04上交叉编译python-3.2.2详细过程
- Python编写API接口
- python中生成器和迭代器
- pythonchallenge 解谜 Level 5
- python 正则过滤四字节字符
- Python import语句导入模块语法
- python+ARIMA 进行时间序列处理
- 用户三次登陆锁定
- Python学习笔记
- python 列表、元组操作
- python 解析web接口的json数据
- Python初级课程——1_Python简介及特色
- python的list和tuple