golang--安装golang并安装grpc-grpcgateway环境
安装goland环境
下载golang安装包,国内环境打开https://studygolang.com/dl,国外环境打开https://golang.google.cn/dl/下载对应系统的安装包,这里以linux环境为例。

wget https://dl.google.com/go/go1.12.8.linux-amd64.tar.gz
执行安装
// 解压
tar xvf go1.12.8.linux-amd64.tar.gz
// 移动目录到系统目录
mv go /usr/local
配置环境变量,写入GOROOT、GOPATH等必要信息
vi /etc/profile
// 写入GOPATH、GOROOT信息
export GOROOT=/usr/local/go
export PATH=$PATH:$GOROOT/bin
export GOPATH=$HOME/go/
export PATH=$PATH:$GOPATH/bin/
// 添加完成后刷新环境变量
source /etc/profile
输入goenv查看当前golang的环境是否配置正确。
安装Protocol Buffers v3
先到github下载稳定版安装包wget https://github.com/protocolbuffers/protobuf/releases/download/v3.9.1/protobuf-all-3.9.1.tar.gz
// 解压
tar xvf protobuf-all-3.9.1.tar.gz
// 安装gcc c++
参考:https://www.cnblogs.com/walkman-sky/p/9426775.html
// 执行安装
./configure
make && make install
检查是否安装成功protoc --version
安装grpc
安装grpc有两种方法,最简单的是使用go get -u google.golang.org/grpc,但是此方法需要合理上网。
第二种方法使用github安装
cd $GOPATH/src
mkdir google.golang.org
cd google.golang.org/
git clone https://github.com/grpc/grpc-go grpc
安装Protoc Plugin
安装Protoc Plugin使用go get -u github.com/golang/protobuf/protoc-gen-go
安装grpc-gateway
下载grpc-gateway主文件
安装grpc-gateway同样有两种方法,go get -u github.com/grpc-ecosystem/grpc-gateway/protoc-gen-grpc-gateway,直接使用go get 安装,此方法有一些依赖需要从google下载,所以需要合理上网。国内推荐使用第二种方法:
cd $GOPATH/src/github.com
mkdir grpc-ecosystem
cd grpc-ecosystem
git clone https://github.com/grpc-ecosystem/grpc-gateway.git
编译安装yaml
yaml是编译安装protoc-gen-grpc-gateway的必备文件
cd $GOPATH/src/github.com
mkdir ghodss
cd ghodss
git clone https://github.com/ghodss/yaml.git
编译安装glog
cd $GOPATH/src/github.com/golang
git clone https://github.com/golang/glog.git
安装yaml.v2
go get gopkg.in/yaml.v2
编译安装protoc-gen-grpc-gateway
cd $GOPATH/src/github.com/grpc-ecosystem/grpc-gateway/protoc-gen-grpc-gateway
go build
mv protoc-gen-grpc-gateway $GOPATH/bin
编译安装protoc-gen-swagger
cd $GOPATH/src/github.com/grpc-ecosystem/grpc-gateway/protoc-gen-swagger
go build
mv protoc-gen-swagger $GOPATH/bin
golang--安装golang并安装grpc-grpcgateway环境的更多相关文章
- CentOS6.4安装Golang环境
什么是Go? Go是一门并发支持.垃圾回收的编译型的系统编程语言,目的是为了创造一门具有在静态编译语言的高性能和动态语言的高效开发之间拥有良好平衡点的一门编程语言. Go的主要特点有哪些? 类型安全和 ...
- 安装Golang 1.6及开发环境
安装Golang 1.6及开发环境=====================================> 下载软件 * go1.4.2.linux-amd64.tar.gz ...
- Win7安装golang开发环境--备忘录
首次接触golang,非常多东西不熟悉,Git也没有安装. 1 安装golang 1.1 下载golang 我是在Golang中国的下载频道下载的golang1.6.链接例如以下: http://ww ...
- Mac os安装golang开发环境
为了能够愉快地进行golang编程,我们需要安装以下几样东西: 包管理Homebrew 语言环境golang 版本管理git 虚拟器docker 编译器Goland 我将按照这个顺序叙述整个安装过程 ...
- 在ubuntun虚拟机里安装goLang语言编程环境
Go语言是谷歌2009发布的第二款开源编程语言. Go语言专门针对多处理器系统应用程序的编程进行了优化,使用Go编译的程序可以媲美C或C++代码的速度,而且更加安全.支持并行进程. 北京时间2010年 ...
- Windows10上基于Visual Studio Code安装Golang开发环境
GoLang简介 Go编程语言是一个开源项目,它使程序员更具生产力. Go语言具有很强的表达能力,它简洁.清晰而高效.得益于其并发机制,用它编写的程序能够非常有效地利用多核与联网的计算机,其新颖的类型 ...
- GO gRPC教程-环境安装(一)
前言 gRPC 是一个高性能.开源和通用的 RPC 框架,面向移动和 HTTP/2 设计,带来诸如双向流.流控.头部压缩.单 TCP 连接上的多复用请求等特.这些特性使得其在移动设备上表现更好,更省电 ...
- 从源码(编译)安装golang 二
h1 { margin-top: 0.6cm; margin-bottom: 0.58cm; direction: ltr; color: #000000; line-height: 200%; te ...
- 从源码(编译)安装golang
从源码安装golang 通常情况下,安装go只需要在官网(https://golang.org/dl/)下载适合系统的二进制发布包,按照安装说明进行安装即可. 对于Linux, Mac OS X和Fr ...
- Golang入门教程(二)Ubuntu16.04下安装golang(实例:Golang 定时任务管理器)
通过两种方式安装 一.通过apt-get安装1.安装 sudo apt-get install golang 2.设置GOPATH变量 GOPATH是扩展库的目录,Go先搜索标准库目录,然后搜索GOP ...
随机推荐
- Python模块一
logging模块 我们来说一下这个logging模块,这个模块的功能是记录我们软件的各种状态,你们现在和我一起找到红蜘蛛的那个图标,然后右键找一找是不是有个错误日志.其实每个软件都是有错误日志的,开 ...
- Flask 请求中间件、错误处理、标签、过滤器、CBV
目录 一.请求中间件 二.请求中间件额外方法(重写源码) 三.请求错误处理 四.请求标签.过滤器 五.CBV写法 基础版 常用版 一.请求中间件 中间件: 1 before_first_request ...
- 代码备份 | 博客侧边栏公告(支持HTML代码)(支持JS代码)
博客侧边栏公告(支持HTML代码)(支持JS代码) <div id='btnList'> <a class="ivu-btn ivu-btn-primary" h ...
- markdown样式测试
------------恢复内容开始------------ 标题1 Aaaaaaaaaaa 引用内容 Aaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa ...
- Natas0 Writeup(前端源码、敏感信息)
Natas0: 提示密码就在本页,右键查看源码,注释中发现flag. flag:gtVrDuiDfck831PqWsLEZy5gyDz1clto 总结:客户端代码注释中切勿保存敏感信息.
- Sqli-labs 搭建SQL注入平台
sqli-labs是一款学习sql注入的开源平台,共有75种不同类型的注入. 搭建步骤: 1.在Windows系统中安装WAMP 下载地址:https://pan.baidu.com/s/1HY0hF ...
- [前端开发]Vue父子组件的通信及访问
父传子 props 子传父 自定义事件emit props传数组 props:['cmovies','cmessage'] props传对象 props:{ //1.类型限制 cmovies:Arra ...
- iOS/macOS推荐个高效苹果开发工具, JSON 转模型代码工具,不再为复杂JSON数据写模型而烦恼,支持Swift/Objective-C,极速转换
CCJSON 是一款运行在macOS上 JSON 转模型代码工具,不再为复杂JSON数据写模型而烦恼,可识别嵌套模型,字典/数组,支持Swift/Objective-C,操作方便,极速转换.下载 效果 ...
- jenkins-gitlab-harbor-ceph基于Kubernetes的CI/CD运用(四)
前景提要 jenkins与gitlab结合,实现代码自动拉取:https://www.cnblogs.com/zisefeizhu/p/12548662.html jenkins与kubernetes ...
- 包和访问权限修饰符,.单例设计模式,.Object类常用方法,.内部类
1.包和访问权限修饰符 1.1 包 为什么要导包? 将字节码文件(.class)文件进行分类存放 --->包 其实就是文件夹 import java.util.Arrays; 包的划分规则 方案 ...