本系列文章使用Hyperledger Fabric 1.1版本作為運行目標,並使用Fabric GO SDK 實作應用,在Ubuntu 16.04 下編譯成功並運行,在你開始之前請先確認版本無誤
(超級帳本技術仍在發展中,使用錯誤的版本你會遇上很多奇怪問題,而且不是你的錯)
如果有想到我會隨時更新
Mac的話非常簡單,只要在命令列打git,然後再跳出來的視窗中選擇「安裝」就好,如果直接執行了,代表你已經安裝了
Ubuntu的話
sudo apt-get install git
這樣就好囉
Mac的話連到Get Started with Docker | Docker
然後底下選擇Download for Mac下載安裝後就好囉~
Ubuntu就麻煩的多,在這邊也不佔篇幅了(因為這安裝基本上沒坑),請連到Get Docker CE for Ubuntu | Docker Documentation
按照步驟安裝囉~
sudo apt-get install golang-go
如果太舊,可以使用這個
sudo add-apt-repository ppa:longsleep/golang-backports
sudo apt-get update
sudo apt-get install golang-go
接著設定好GOPATH
export GOPATH=$HOME/go
export PATH=$PATH:$GOPATH/bin
Dep 是 GO語言的套件相依性工具,這東西超麻煩,很容易陷入相依性地獄,常常都是卡在這裡,使用上要小心
可以直接抓執行檔
curl https://raw.githubusercontent.com/golang/dep/master/install.sh | sh
或是連原始碼一起安裝
go get -u github.com/golang/dep/cmd/dep
Mac的話最方便
brew install dep
brew upgrade dep
Docker compose 是讓Docker 可以運行預先寫好的腳本工具
安裝方式:
sudo curl -L https://github.com/docker/compose/releases/download/1.22.0/docker-compose-$(uname -s)-$(uname -m) -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
Mac的話,裝好Docker 就幫你裝好了
安裝HyperLedger Fabric 1.1 我會推薦直接使用他提供的批次安裝檔,他會幫你安裝好一些先決條件的內容
curl -sSL https://goo.gl/6wtTN5 | bash -s 1.1.0
接著clone Fabric的專案
mkdir -p ~/go/src/github.com/hyperledger && cd ~/go/src/github.com/hyperledger &&
git clone https://github.com/hyperledger/fabric.git
Checkout 指定版本
git checkout -b v1.1.0
cd ~/go/src/github.com/hyperledger &&
git clone https://github.com/hyperledger/fabric-sdk-go.git
如果你使用Mac,你只需要用homebrew安裝tree
brew install tree
Ubuntu則是
sudo apt-get install tree
上述步驟完成後就已經將我們所需要的工具都裝好了,接下來我們就可以開始來編譯Fabric的工具以及準備好建構第一個區塊鏈網路囉
歡迎直接底下留言問我,寫信也可以 hung@kogi.ws
大大好:
您好,前面都安裝的很順利 不過到了DEP就怪怪Der了XDDD
為蝦咪安裝Dep 如果是使用
go get -u github.com/golang/dep/cmd/dep
則會出現
package context: unrecognized import path "context" (import path does not begin with hostname)
但是如果是使用整包下載方式
curl https://raw.githubusercontent.com/golang/dep/master/install.sh | sh
則會出現這樣的錯誤
ARCH = amd64 --:--:-- --:--:-- --:--:-- 0
6532 0 --:--:OS = linux
-- --:--:-- --:--:-- 6526
Installation requires your GOBIN directory /home/allen/go/bin to exist. Please create it.
感謝大大教學= =
哈囉哈囉~你可以先確定你的/home/allen/go資料夾底下有沒有bin資料夾喔,沒有的話新增一個叫做bin的資料夾,再試一次看看
感謝你的收看QQ~~這禮拜比較忙 我下禮拜會繼續往下寫喔
哈 我最近也一直在拜讀HYPERLEDGER的東西
我本來也想說 是不是也要來個HYPERLEDGER 30日
正好發現您的30日鐵人 XD
另外
git checkout -b v1.1.0
會出現
fatal: Not a git repository (or any of the parent directories): .git
這是蝦咪XD
你是直接抓下來的嗎??看起來你那資料夾並沒有git設定檔,如果你確定是fabric資料夾底下的話,那就再次設定吧
輸入git init
或是你直接重新clone一份repo下來
哈哈哈 我的30日可能要變成60日了~~不過我決定要長期寫下去了所以沒差,畢竟fabric每一個版本差異都有點大,一起交流~~Fabric值得投資