fabric是一款命令列工具,支持執行本地命令,執行遠程命令,上傳下載等,fabric像一個subprocess+paramiko的集合,又像一個更加輕量級的ansible,可以批量對服務進行操作

【閱讀全文】
安裝插件
'''
安裝fabric3
pip3 install fabric3
'''
# C:\Users\Administrator>pip3 install fabric3
# Collecting fabric3
# Downloading Fabric3-1.14.post1-py3-none-any.whl (92 kB)
# |████████████████████████████████| 92 kB 73 kB/s
# Requirement already satisfied: six>=1.10.0 in c:\python38\lib\site-packages (from fabric3) (1.15.0)
'''
查看版本資訊
fab -V
'''
# C:\Users\Administrator>fab -V
# Fabric3 1.14.post1
# Paramiko 2.7.2
'''
查看幫助資訊
fab -h
'''
# C:\Users\Administrator>fab -h
# Usage: fab [options] <command>[:arg1,arg2=val2,host=foo,hosts='h1;h2',...] ...
#
# Options:
# -h, --help show this help message and exit
# -d NAME, --display=NAME
# print detailed info about command NAM
遠程啟用應用
# 匯入Connection連接物件
from fabric import Connection
def run():
'''
應用部署
:return:
'''
# 連接服務器
conn = Connection("[email protected]", connect_kwargs={"password": "docker"})
# 執行控制臺命令
with conn.cd('/usr/load/project'):
# 拉取hello world的docker鏡像
conn.run("docker pull hello world")
# 啟動鏡像
conn.run("docker run hello world")
本地命令執行
# 創建fabfile.py檔案
# 匯入本地local
from fabric.api import local
def hello_world():
'''
本地命令列
:return:
'''
print("查看當前檔案目錄")
local("ll -a")
# 命令列呼叫函式
# $ fab hello_world
【往期精彩】
● python超贊插件you-get,執行一行命令即可下載、命令列下載工具推薦!
● 辦公自動化:Python-win32com自動將word檔案轉換成pdf格式!
● pandas資料統計插件的連接函式concat()妙用,靈活處理資料物件!
● Git LFS 3.0.0 發布,對大檔案進行版本控制的 Git 擴展
● python有序序列的字典序列推導式運用技巧!
● Django 4.0 alpha 1 發布
● python經典有序序列的list串列推導式實踐運用
● python常用轉義字串總結:各種字符轉義的不同、如何取消轉義字符效果?
● 推薦一款python、excel集成的資料分析工具PyXLL-Jupyter!
● 如何使用python完成對WebService服務的呼叫?suds-py3插件安利一下!
● 介紹一款優秀的IDE Grid Studio,Excel深度集成python,直接撰寫并執行python代碼塊!
● 十大開源軟體基金會你知道哪些?
● python內置函式通過字串的方式來執行函式代碼塊,類似java的反射機制相當強大!
● python-Coverage 代碼覆寫率統計工具,生成html代碼報告
歡迎關注作者公眾號【Python 集中營】,專注于后端編程,每天更新技術干貨,不定時分享各類資料!轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/306139.html
標籤:其他
下一篇:Go語言之結構體與方法
