使用python-fabric进行远程环境部署
2024-08-28 16:18:18
使用fabric可以通过ssh连接远程终端,对终端进行操作,可以进行远程环境的部署,前提是远程终端已安装openssh-server,且ssh-server开启
安装fabric
fabric支持python2和python3,不过python3在安装时,要安装fabric3,虽然安装fabric也可以成功,但是用不了,会有报错
$pip install fabric #python2
$pip3 install fabric3 #python3
使用方法
1、安装后,手动创建一个fabfile.py的脚本文件
2、名称不能变,必须是fabfile.py,否则运行时会报错,找不到任何fabfile.py文件;当然如果非要命名成其他文件也可以,但是运行时要加参数-f filename
3、在终端中运行命令即可 (fab -h显示帮助信息,可以查看所有参数)
常用的fabric.api
'abort' 终止执行
'cd' 远程终端切换到指定路径
'lcd' 本地终端切换到指定路径
'env' fabric环境变量,这是个dict
'get' 从远程终端下载文件到本地
'put' 从本地上传文件到远程终端
'run' 执行远程命令
'local' 执行本地命令
'sudo' 以sudo的权限执行命令
常用的就这几个,其余的后期再去研究
简单的例子
在某路径下创建一个fabfile.py的文件
# -*- coding: utf-8 -*-
from fabric.api import *
env.hosts = ['10.4.66.87']
env.user = 'jkwang'
env.password = '20160418'
def mytest():
run('ls -ll')
with cd('testforfab'):
run('echo "hello"> a')
run('ls -la')
运行结果
1: svn checkout命令:svn co url --username xxx --password xxx ./ 参考http://riaoo.com/subpages/svn_cmd_reference.html
2: 参考廖雪峰老师的博客,有更具体的例子:http://www.liaoxuefeng.com/article/001373892650475818672edc83c4c978a45195eab8dc753000
最新文章
- Java进阶(五)Java I/O模型从BIO到NIO和Reactor模式
- JavaEE视频学习
- 4G基站如何查询
- 高性能JavaScript 加载和执行
- Redis Sentinel机制与用法(一)
- eclipse https git
- tomcat7登录账户配置
- thinkphp中模板继承
- Python 深拷贝和浅拷贝
- ORCLE INNODB 博客与 innodb_lru_scan_depth
- 微信js获得签名signature
- HttpContext.Current.User.Identity.IsAuthenticated
- PHP问题
- 2的N次方
- WWDC2014之App Extensions学习笔记
- [转] 有趣的JavaScript原生数组函数
- SDWebImage 常用方法
- Java 重入锁 ReentrantLock
- As3.0 Interface 与类的使用
- Influxdb1.2.2安装
热门文章
- 40个Java多线程问题总结【转】
- selenium - 驱动 chromedriver 初始化问题总结
- .gitignore non-valiate
- html5调用本机摄像头兼容谷歌浏览器高版本,谷歌浏览器低版本,火狐浏览器
- 关于 pycharm 安装第三方模块的一些经验
- 值得一做》一道类似于货车运输的题目(BZOJ3732)(easy+)
- CentOS集群自动同步时间的一种方法
- UOJ 176 新年的繁荣
- osm2pgsql windows “illegal option -W” error
- django: rest-framework的 分页和过滤