安装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环境的更多相关文章

  1. CentOS6.4安装Golang环境

    什么是Go? Go是一门并发支持.垃圾回收的编译型的系统编程语言,目的是为了创造一门具有在静态编译语言的高性能和动态语言的高效开发之间拥有良好平衡点的一门编程语言. Go的主要特点有哪些? 类型安全和 ...

  2. 安装Golang 1.6及开发环境

    安装Golang 1.6及开发环境=====================================> 下载软件    * go1.4.2.linux-amd64.tar.gz     ...

  3. Win7安装golang开发环境--备忘录

    首次接触golang,非常多东西不熟悉,Git也没有安装. 1 安装golang 1.1 下载golang 我是在Golang中国的下载频道下载的golang1.6.链接例如以下: http://ww ...

  4. Mac os安装golang开发环境

    为了能够愉快地进行golang编程,我们需要安装以下几样东西: 包管理Homebrew 语言环境golang 版本管理git 虚拟器docker 编译器Goland 我将按照这个顺序叙述整个安装过程 ...

  5. 在ubuntun虚拟机里安装goLang语言编程环境

    Go语言是谷歌2009发布的第二款开源编程语言. Go语言专门针对多处理器系统应用程序的编程进行了优化,使用Go编译的程序可以媲美C或C++代码的速度,而且更加安全.支持并行进程. 北京时间2010年 ...

  6. Windows10上基于Visual Studio Code安装Golang开发环境

    GoLang简介 Go编程语言是一个开源项目,它使程序员更具生产力. Go语言具有很强的表达能力,它简洁.清晰而高效.得益于其并发机制,用它编写的程序能够非常有效地利用多核与联网的计算机,其新颖的类型 ...

  7. GO gRPC教程-环境安装(一)

    前言 gRPC 是一个高性能.开源和通用的 RPC 框架,面向移动和 HTTP/2 设计,带来诸如双向流.流控.头部压缩.单 TCP 连接上的多复用请求等特.这些特性使得其在移动设备上表现更好,更省电 ...

  8. 从源码(编译)安装golang 二

    h1 { margin-top: 0.6cm; margin-bottom: 0.58cm; direction: ltr; color: #000000; line-height: 200%; te ...

  9. 从源码(编译)安装golang

    从源码安装golang 通常情况下,安装go只需要在官网(https://golang.org/dl/)下载适合系统的二进制发布包,按照安装说明进行安装即可. 对于Linux, Mac OS X和Fr ...

  10. Golang入门教程(二)Ubuntu16.04下安装golang(实例:Golang 定时任务管理器)

    通过两种方式安装 一.通过apt-get安装1.安装 sudo apt-get install golang 2.设置GOPATH变量 GOPATH是扩展库的目录,Go先搜索标准库目录,然后搜索GOP ...

随机推荐

  1. day1 执行用例

    故事1 今天的工作,是执行已写好的"回馈"模块用例 每个子模块的用例都有优先级之分 肯定要先进行通过性测试,验证正常流 因此,我优先执行各个子模块优先级最高的那条用例,进行通过性测 ...

  2. MySQL5.7 数据库的my.cnf配置

    [client] port socket=/tmp/mysql.sock default-character-set=utf8 [mysql] no-auto-rehash default-chara ...

  3. 033.Kubernetes集群安全-API Server认证及授权

    一 Kubernetes集群安全 1.1 安全机制 Kubernetes通过一系列机制来实现集群的安全控制,其中包括API Server的认证授权.准入控制机制及保护敏感信息的Secret机制等.集群 ...

  4. 浅析Redis分布式锁---从自己实现到Redisson的实现

    当我们在单机情况下,遇到并发问题,可以使用juc包下的lock锁,或者synchronized关键字来加锁.但是这俩都是JVM级别的锁,如果跨了JVM这两个锁就不能控制并发问题了,也就是说在分布式集群 ...

  5. js 验证输入框是否为空

    很多时候,菜鸟在对输入框是否输入值进行验证时,总会把输入“空字符串”这一状况给忽略掉.嗯,我就这样,所以记下,以后回忆下还是不错滴 <input type="text" id ...

  6. DOTNET CORE源码分析之ServiceDescriptor

    ServiceDescriptor在.net core中的作用就是DI中注入服务元素的描述.每一个元素核心内容部分包括需要注入的服务元素的类型ServiceType,它对应的接口(如果有的话)Impl ...

  7. Effective Python读书笔记

    有些位置可能翻译理解的不到位,各位看官如有疑问,欢迎留言赐教. Pythonic Thinking 大家经常用Pythonic来形容python语法风格的编程方式:简单优美,没有之一:通过import ...

  8. 关于Web2.0

    前言:本来是想写HTML的,发现没什么好写的,就简单写一下Web2.0好了 什么是Web 2.0: "Web 2.0 is the business revolution in the co ...

  9. [图中找环] Codeforces 659E New Reform

    New Reform time limit per test 1 second memory limit per test 256 megabytes input standard input out ...

  10. PAT-B 1003. 我要通过!(20) Java版

    "答案正确"是自动判题系统给出的最令人欢喜的回复.本题属于PAT的"答案正确"大派送 -- 只要读入的字符串满足下列条件,系统就输出"答案正确&quo ...