摘要:背景在下安裝的時候,總是安裝不成功,在執行命令的時候,總是會拋出錯誤。解決方案安裝替代系統默認的再安裝包系統默認自帶的版本是下載安裝包在的官網下載頁面下載的源碼包。在下安裝就省事很多。附上執行簡單部署的一份代碼例子,僅供參考。
背景
在Centos6.3下安裝fabric的時候,總是安裝不成功,在執行fab命令的時候,總是會拋出錯誤。
Traceback (most recent call last): File "/usr/bin/fab", line 5, infrom pkg_resources import load_entry_point File "/usr/lib/python2.6/site-packages/pkg_resources.py", line 2655, in working_set.require(__requires__) File "/usr/lib/python2.6/site-packages/pkg_resources.py", line 648, in require needed = self.resolve(parse_requirements(requirements)) File "/usr/lib/python2.6/site-packages/pkg_resources.py", line 546, in resolve raise DistributionNotFound(req) pkg_resources.DistributionNotFound: paramiko>=1.10
安裝Python2.7替代系統默認的Python2.6,再安裝fabric包
Centos6.3系統默認自帶的Python版本是2.6.
1、下載Python2.7安裝包
在Python的官網下載頁面下載2.7的源碼包。
wget https://www.python.org/ftp/python/2.7.8/Python-2.7.8.tar.xz
2、解壓,編譯,安裝
xz -d Python-2.7.8.tar.xz tar xvf Python-2.7.8.tar cd Python-2.7.8 ./configure --prefix=/usr/local/python2.7 make make install
3、創建軟連接覆蓋系統默認的python
ln -fs /usr/local/python2.7/bin/python2.7 /usr/bin/python
系統的yum依賴于python2.6,此時系統默認的python已經是2.7.*版本,要確保yum能正常運行,務必修改/usr/bin/yum
vi /usr/bin/yum
將第一行的#!/usr/bin/python修改為#!/usr/bin/python2.6
4、安裝pip包管理工具
pip是一個安裝和管理python包的工具.
wget https://raw.github.com/pypa/pip/master/contrib/get-pip.py python get-pip.py ln -fs /usr/local/python2.7/bin/pip /usr/bin/pip
5、安裝fabric
pip install fabric ln -fs /usr/local/python2.7/bin/fab /usr/bin/fab
到這里fabric就安裝完成了,可以正常運行了,折騰了好久,終于搞好了。~~~在ubuntu下安裝fabric就省事很多。
附上執行簡單部署的一份代碼例子,僅供參考。
# -*- coding: utf-8 -* #添加中文注釋的編碼 #fabfile.py from fabric.api import * env.user = "root" env.hosts = ["192.168.1.100"] #遠程服務器的密碼,這個建議不要填寫,寧愿在運行的過程輸入,因為這是明文顯示的,不安全 #也可以將機子的ssh打通,這樣就可以避免輸入密碼的麻煩 #env.password = "testtest" #從版本庫取出,并刪除.svn文件 def download(): local("rm -rf /tmp/newer" ) local("mkdir /tmp/newer") local("svn checkout svn://localhost/newer /tmp/newer") local("find /tmp/newer -name ".svn" | xargs rm -rf") #壓縮打包 def pack(): with lcd("/tmp/"): local("tar czvf newer.tar.gz ./newer") #部署遠程服務器目錄結構 def display(): run("rm -rf /var/www/html/tmp") run("mkdir /var/www/html/tmp") # 將本地的壓縮包發送到遠程服務器 put("/tmp/newer.tar.gz","/var/www/html/tmp") with cd("/var/www/html/tmp"): run("tar xvf newer.tar.gz") #都部分目錄進行特別處理 with cd("/var/www/html/newer/public/"): run("cp -r ueditor ../../tmp") with cd("/var/www/html/"): run("rm -rf newer") run("cp -r /var/www/html/tmp/newer ./") with cd("/var/www/html/newer/public"): run("rm -rf ueditor") run("cp -r /var/www/html/tmp/ueditor ./") # 執行部署 def go(): download() pack() display()
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/17351.html
摘要:使用可以在服務器中自動執行命令。重啟和使改動生效。執行自動部署腳本進入文件所在的目錄,在的環境下用命令運行這個腳本文件。在使用自動化部署的評論區留言。 在 使用 Nginx 和 Gunicorn 部署 Django 博客 中,我們通過手工方式將代碼部署到了服務器。整個過程涉及到十幾條命令,輸了 N 個字符。一旦我們本地的代碼有更新,整個過程又得重復來一遍,這將變得非常繁瑣。 使用 Fa...
摘要:腳本列出了在結束時安裝的映像。在不同的體系結構,將用標識體系結構的字符串替換。提供了許多來支持各種編程語言,官方發布了兩款針對和的和文檔。。 入門 在我們開始之前,如果你還沒有這樣做,你可能希望檢查是否已經在開發區塊鏈應用程序和/或運行Hyperledger Fabric的平臺上安裝了所有前提條件。 一旦安裝了前提條件,就可以下載并安裝HyperLedger Fabric了,當我們在F...
摘要:本文首發于深入淺出區塊鏈社區原文鏈接聯盟鏈初識以及環境搭建流程原文已更新,請讀者前往原文閱讀這篇文章首先簡單介紹了聯盟鏈是什么,再詳細的介紹了環境搭建的整個流程。 本文首發于深入淺出區塊鏈社區原文鏈接:聯盟鏈初識以及Fabric環境搭建流程原文已更新,請讀者前往原文閱讀 這篇文章首先簡單介紹了聯盟鏈是什么,再詳細的介紹了Fabric環境搭建的整個流程。 區塊鏈分類: 以參與方式分類,區...
摘要:是基于實現的遠程安全連接,支持認證及密鑰方法。利用函數發送到,通過函數獲取回顯。如下全局屬性設定對象的作用是定義的全局設定,支持多個屬性及自定義屬性。相比確實簡化了不少。出現異常時,發出警告,繼續執行,不要終止。 paramiko paramiko是基于Python實現的SSH2遠程安全連接,支持認證及密鑰方法。可以實現遠程命令執行,文件傳輸,中間SSH代理等功能,相對于Pexpect...
閱讀 1214·2021-09-26 09:55
閱讀 3158·2019-08-30 15:55
閱讀 948·2019-08-30 15:53
閱讀 2286·2019-08-30 13:59
閱讀 2367·2019-08-29 13:08
閱讀 1098·2019-08-29 12:19
閱讀 3290·2019-08-26 13:41
閱讀 411·2019-08-26 13:24