1. 程式人生 > >在 hyperledger fabric 新增 User後重新編譯 Docker 開發環境所需 Images

在 hyperledger fabric 新增 User後重新編譯 Docker 開發環境所需 Images

在 hyperledger/fabric 新增 User後重新編譯 Docker 開發環境所需 Images

作者:陳兆麟 Email:[email protected]

開發環境: Win7 (64 bit, RAM >=8G) , vagrant , blockchain, docker,golang

1. win7 安裝 cygwin

將安裝之執行檔案目錄 (C:\cygwin64\bin) 設定在控制檯系統 path 變數

win7 安裝 virtualbox (VirtualBox-5.1.6-110634-Win.exe)

2.安裝 fabric (0.6 release)

進入Win7 command shell:
$mkdir -p d:\GoProjects\src\github.com\hyperledger
$cd d:\GoProjects\src\github.com\hyperledger
$git clone -b v0.6 http://gerrit.hyperledger.org/r/fabric (0.6 release)
$cd d:\GoProjects\src\github.com\hyperledger\fabric\devenv
$vi Vagrantfile
新增 :
config.vm.network “forwarded_port”, guest: 22, host: 22
config.vm.network “forwarded_port”, guest: 3000, host: 3000
修正 :
vb.name = “hyperledger” (hyperledger 為 virtualbox 虛擬機器器名稱)
$vagrant up (第一次在 virtual box 產生虛擬機器器 hyperledger需要一段時間)

3. 使用 putty (附錄 1) 登入 hyperledger VM (username: vagrant,password:vagrant)

4. 在hyperledger VM使用 nvm 安裝 node 最新版 (參考附錄 4)

$ nvm use 6.7.0 (選擇 node 版本)
$ node -v
v6.7.0
$ npm -v
3.10.3

5. 驗證hyperledger已掛載 Win7 目錄

hyperledger掛載點
($GOPATH/src/github.com/hyperledger/fabric)
已掛載 win 7 local machine目錄
(d:\GoProjects\src\github.com\hyperledger\fabric)
可用 touch 指令新增 empty file (例如 touch abcd) 測試是否掛載成功

6. 新增使用者

$cd $GOPATH/src/github.com/hyperledger/fabric
$ vi membersrvc/membersrvc.yaml (新增使用者ruby:6avZQLwcUeaa)


$vi ./core/chaincode/chaincodetest.yaml

7. 重新編譯 fabric-peer & fabric-membersrvc

$ make peer-image
$ make membersrvc-image
$ docker images

$ docker tag hyperledger/fabric-membersrvc:latest chenlin2/fabric-membersrvc:new
$ docker tag hyperledger/fabric-peer:latest chenlin2/fabric-peer:new (更名)
$ docker push chenlin2/fabric-peer:new (上傳 docker hub)
$ docker push chenlin2/fabric-membersrvc:new

8.參考附錄 (2) 在 Win7安裝 Docker Toolbox (安裝最新版)

(Win 10 可直接安裝 Docker 請參考附錄3 )

9. 桌面點選 (Docker Quickstart Terminal)


$ docker -v
Docker version 1.12.0, build 8eab29e
$ docker-machine ls (Docker Quickstart Terminal介面執行,確認虛擬機器default 已安裝)
NAME ACTIVE DRIVER STATE URL SWARM DOCKER ERRORS
default virtualbox Running tcp://192.168.99.101:2376 v1.10.3
$ docker-machine env default
SET DOCKER_TLS_VERIFY=1
SET DOCKER_HOST=tcp://192.168.99.100:2376
SET DOCKER_CERT_PATH=C:\Users\user.docker\machine\machines\default
SET DOCKER_MACHINE_NAME=default
REM Run this command to configure your shell:
REM FOR /f “tokens=*” %i IN (‘docker-machine env default’) DO %i
$ FOR /f “tokens=*” %i IN (‘docker-machine env default’) DO %i
$ docker-machine ls (確定虛擬機器已經啟動)
NAME ACTIVE DRIVER STATE URL SWARM DOCKER ERRORS
default * virtualbox Running tcp://192.168.99.100:2376 v1.10.3

10. 使用 putty (見附錄 1)登入虛擬機器器

ip:192.168.99.100 (username=docker password=tcuser)

$mkdir -p /c/Users/user/ictest/docker_blockchain
$vi docker-compose.yml (如附錄 5)
$docker-compose up -d (啟動 container)

11.登入至 dockerblockchain_vp0_1 容器

$docker exec -it dockerblockchain_vp0_1 bash
#cd examples/chaincode/go/chaincode_example02
#ls
chaincode_example02.go
# go build ./ (編譯 chaincode_example02.go)
# ls
chaincode_example02 chaincode_example02.go
# export CORE_CHAINCODE_ID_NAME=mycc
# export CORE_PEER_ADDRESS=0.0.0.0:7051
#./chaincode_example02 & (chaincode 啟動接收外界送來的交易)

12. 在 win7下載安裝 Postman

https://www.getpostman.com/apps (Postman-win64-4.7.1-Setup.exe)
Postman 具有好用的人機介面,藉REST API 在VP佈署Chaincode

13. 檢視已建立的 blockchain network

REST API欄位輸入:http://192.168.99.100:7050/network/peers
192.168.99.100 (來自虛擬機器器default之IP), 7050定義於docker-compose.yml

14. User至vp (validating peer )註冊驗證新增user (ruby:6avZQLwcUeaa)是否有效

REST API欄位輸入: http://192.168.99.100:7050/registrar
{
“enrollId”: “ruby”,
“enrollSecret”: “6avZQLwcUeaa”
}

附錄:

參考文獻:

相關推薦

hyperledger fabric 新增 User重新編譯 Docker 開發環境 Images

在 hyperledger/fabric 新增 User後重新編譯 Docker 開發環境所需 Images 作者:陳兆麟 Email:[email protected] 開發環境: Win7 (64 bit, RAM >

Hyperledger Fabric CA User’s Guide——CA用戶指南(一)

targe har 格式 rect ocs form per ces guid Fabric CA用戶指南 Hyperledger Fabric CA是一種用於Hyperledger Fabric的認證機構(CA)。 它提供了如下特性: 登記身份(註冊ID),或者連接到作

NS2修改原始碼重新編譯步驟

在網路模擬過程中,我們需要對NS2的原始碼修改某些引數,比如修改通道頻寬,具體步驟如下: 進入ns-2.35目錄 命令列輸入(root許可權) make clean make 簡單的認識一下make 和 makefile: makefile可以看作某個專案或工

[原創] HBuildX,微信小程式模擬器報錯(如若已在管理後臺更新域名配置,請重新整理專案配置重新編譯專案)

今天在學習使用uniapp,開發微信小程式時第三方登入時,HBuild編輯器報了一個錯誤,經過定位分析,確定程式碼是沒有問題的,報錯如下 如若已在管理後臺更新域名配置,請重新整理專案配置後重新編譯專案 經過在網上查詢資料,得到解決方法,只需修改HBuild配置即可 找到模擬器右上角的詳

linux下為php新增GD庫(重新編譯php)

一、下載 二、安裝 1.安裝zlib tar zxvf zlib-1.2.2.tar.gz cd zlib-1.2.2 ./configure make make install 2.安裝libpng tar zxvf libpng-1.2.7.tar

微信小遊戲 :未找到入口 app.json 檔案,或者檔案讀取失敗,請檢查重新編譯

☹. 背景 ·首先提示的是,之前我已經有開發小程式的經驗了 ·最近,覺得無聊所以想接觸一下小遊戲的開發,畢竟兩者太過相近 ·但是我發現,網上找了個小遊戲專案匯入,並且更改了自己的appID ·竟赫然的

eric6+pyqt5,修改UI檔案重新編譯的方法

新手在用ERIC6+PYQT5的時候重新修改了UI檔案,卻找不到重新編譯的地方,網上也沒有現成的答案,這兒介紹一下過程:1,開啟ERIC62,在ERIC6介面最右邊找到QT-DESIGNER圖示,並開啟3,在QT-DESIGNER介面下,左上角,檔案->開啟要修改的UI

ubuntu1604下新增自啟動項 開機啟動docker開發環境

在win7下安裝的vbox虛擬機器,虛擬機器起了一個ubuntu1604作為宿主機,安裝的docker服務通過vbox的掛載工具將win7下的程式開發目錄掛載到了ubuntu下 作為共享目錄docker安裝的開發環境是 apache-php   mysql5.6  redis

LINUX下編譯源碼時提前安裝的常用依賴包列表

conf toc tps ncurses dev openss c++ zlib bzip2 yum -y install gcc gcc-c++ autoconf libjpeg libjpeg-devel libpng libpng-devel freetype fre

EOS docker開發環境

  EOS Wiki提供了有關如何使用docker容器編譯最新版本程式碼的說明。但可能有它自己的一些問題,因此我們鼓勵你在學習時引用下面映象。這樣最初會更容易,更快。    如果你還沒有安裝docker,請在此處下載。    1.獲取docker映象    以下語句將下載包含已編譯軟體的Ubuntu映象。  

Deepin系統安裝相關設定與開發環境搭建

Deepin系統安裝後相關設定與環境搭建 系統環境設定 設定 swap(交換分割槽) 的大小 1、使用 free 命令檢視交換分割槽的大小,若為 0;則進行建立設定 2、使用 dd

vagrant特性——基於docker開發環境docker和vagrant的結合)-1-基本使用

Docker vagrant提供了使用Docker作為provider(其他的provider有virtualBox、VMware\hyper-V等)的開箱即用支援。這允許你的開發環境由Docker容器而不是虛擬機器支援。此外,它為開發dockerfile提供了一個良好的工作流。 Docker Basic

vagrant特性——基於docker開發環境docker和vagrant的結合)-1-簡介

原文https://www.hashicorp.com/blog/feature-preview-docker-based-development-environments Feature Preview: Docker-Based Development Environments vagrant 1.6

在Windows平臺上搭建Docker開發環境

本文介紹的是如何在Windows系統上安裝Docker執行環境。Docker官方提供了Windows平臺上的安裝包,這個安裝包會開啟Windows平臺上的HyperV虛擬機器。所以如果不喜歡使用HyperV虛擬機器或者有需要使用其他虛擬機器軟體的話,可以自己在L

windows環境 springboot+docker開發環境搭建與hello word

icon rop acl sta gin .html rod 持久 proc 原文:windows環境 springboot+docker開發環境搭建與hello word1,下載安裝 docker toolbox 下載地址:http://mirrors.aliyu

MAC OSX Docker開發環境搭建

MAC OSX  Docker 開發環境搭建 1. 安裝Virtualbox 下載地址 2. 安裝boot2docker $ brew install boot2docker # 也可以手工安裝

手動編譯PHP開發環境

目錄 手動編譯PHP開發環境 問題覆盤 部署環境及配置 目標環境 安裝部署環境開始 首先安裝PHP 安裝mysql 安裝ngi

Android Studio中新增整體的activity類檔案,重新編譯提示“程式包R不存在”解決

問題描述: 做新功能模組開發,新增兩個寫好的activity類檔案,資原始檔和jave都整合好了,最後 Rebuild Project的時候編譯的message裡面出現“程式包R不存在”提示 解決辦

Android反編譯重新打包

在android開發中經常會遇到需要反編譯競品的需求,題主也就針對反編譯apk後替換sdk後重新打包的場景進行試驗,下面一步一步來說明Android如何反編譯後重新打包。 一個典型apk包中包含的內容 我們知道android專案編譯成應用程式後的安裝檔案是.apk檔案,執行期間

Android打包系列 JAR反編譯修改重新打包

在工作中,有些第三方JAR不能滿足我們的特殊需求,所以經常會有需要修改JAR的情況,這裡給出基本的修改思路,然後再輔以例項。 思路 使用反編譯工具JD-GUI)開啟要修改的jar包(如beforeModify.jar),找到jar包中要修改的class檔案(如A.class)