安装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. MySQL 整体架构一览

    MySQL 在整体架构上分为 Server 层和存储引擎层.其中 Server 层,包括连接器.查询缓存.分析器.优化器.执行器等,存储过程.触发器.视图和内置函数都在这层实现.数据引擎层负责数据的存 ...

  2. 使用JavaScript策略模式校验表单

    表单校验 Web项目中,登录,注册等等功能都需要表单提交,当把用户的数据提交给后台之前,前端一般要做一些力所能及的校验,比如是否填写,填写的长度,密码是否符合规范等等,前端校验可以避免提交不合规范的表 ...

  3. Spring MVC启动流程分析

    本文是Spring MVC系列博客的第一篇,后续会汇总成贴子. Spring MVC是Spring系列框架中使用频率最高的部分.不管是Spring Boot还是传统的Spring项目,只要是Web项目 ...

  4. Redis 服务端程序实现原理

    上篇我们简单介绍了 redis 客户端的一些基本概念,包括其 client 数据结构中对应的相关字段的含义,本篇我们结合这些,来分析分析 redis 服务端程序是如何运行的.一条命令请求的完成,客户端 ...

  5. PHP 7 中的一些小技巧,你知道的有哪些

    PHP 7 显著提高了整体性能.实际上主要的特性有 null 合并运算符或返回类型声明.如果你不知道它们,那么你应该去查看 PHP 文档. 这里有一些很少人知道的.可能有用的特性. 相同的命名空间,相 ...

  6. Natas5 Writeup(Cookie伪造)

    Natas5: 提示不允许进入,没有登录,burp抓包,查看cookie信息后发现存在loggedin项,且值为0,猜测该值代表是否登录,将其修改为1,得到flag. flag:aGoY4q2Dc6M ...

  7. Leetcode_1048. 最长字符串链

    字符串的最长严格递增子序列,前后只能相差一个字符. 直接O(N^2)暴力建图,然后记忆化跑个最长路. 直接按字符串长度排序,然后求LIS. code1 class Solution { public: ...

  8. CodeMixerPro工具,完美替代ChaosTool,iOS添加垃圾代码工具,代码混淆工具,代码生成器,史上最好用的垃圾代码添加工具,自己开发的小工具

    新工具 ProjectTool 已上线 这是一款快速写白包工具,秒级别写H5游戏壳包,可视化操作,极易使用,支持Swift.Objecive-C双语言 扣扣交流群:811715780 进入 Proje ...

  9. Swift 4.0 字典(Dictionary)学习

    定义字典常量(常量只有读操作) let dictionary1 = ["key1": 888, "key2": 999] let dictionary2: [S ...

  10. AutoJS4.1.0实战教程 ---火热持续更新中

    这个时代假货太多,虚假广告更是充斥着整个互联网.尤其是那个传奇的我都无语了.好几个明xing代言,问题是太假了……我好奇的是那么虚假怎么就没人管呢,XX部干嘛呢……另外互联网刷视频赚钱就是个炒作.几百 ...