docker的安裝
https://www.docker.com/get-started
docker安裝centos7鏡像
docker pull centos:7
docker run -d -t -i -p 8080:80 --name=centos_protoc centos:7
#查看centos_protoc容器ID,并進入容器
docker ps
docker exec -it <container_id> bash
### protoc 版本3+ 的安裝
wget https://github.com/google/protobuf/releases/download/v3.6.1/protobuf-all-3.6.1.tar.gz
tar zxvf protobuf-all-3.6.1.tar.gz
yum -y install gcc automake autoconf libtool make
yum install gcc gcc-c++
./autogen.sh
./configure
make
make install
centos7 golang版本的安裝
// 下載解壓
wget https://dl.google.com/go/go1.13.linux-amd64.tar.gz
tar -C /usr/local -vxzf go1.13.linux-amd64.tar.gz
// 配置環境變數
vi ~/.bash_profile
export PATH=$PATH:/usr/local/go/bin
source ~/.bash_profile
go version
// 設定代理
go env -w GO111MODULE=on
go env -w GOPROXY=https://goproxy.io,direct
go 安裝protoc-gen-doc
go get -u github.com/pseudomuto/protoc-gen-doc/cmd/protoc-gen-doc
// 下載目錄為/root/go/src/github.com/pseudomuto/protoc-gen-doc
進入 cmd下的 protoc-gen-doc 檔案夾 執行 `go build -o protoc-gen-doc -a ` 生成protoc-gen-doc檔案
vi ~/.bash_profile
export PATH=$PATH:/usr/local/go/bin:/usr/bin/protoc-gen-doc
source ~/.bash_profile
測驗
新建 map.proto
syntax = "proto3";
package xd.tds.gameConsole;
service Map {
rpc getMapDetail(GetMapDetailRequest) returns(GetMapDetailResponse) {
}
}
message GetMapDetailRequest {
string name = 1;
}
message GetMapDetailResponse {
int32 code = 1;
string msg = 2;
repeated MapData data = 3;
}
message MapData {
int32 id = 1;
string label = 2;
}
執行命令:
protoc --doc_out=json,yzt_proto.json:./output/ ./*.proto
可以在output中查看生成的檔案(docker cp id:容器內的地址 宿主機地址)
docker cp 74188c0250b6:output ./
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/241900.html
標籤:區塊鏈
下一篇:互聯網公司是如何變現的?
