go micro 学习笔记 2:环境搭建(可运行示例)
2017-10-27 13:16
756 查看
1、创建镜像:
docker run -it -v /opt:/wz -p 8080:8080 -p 8081:8081 -p 8082:8082 --name gomicro centos:latest /sbin/init-v是将主机的/opt目录映射到容器的/wz目录,所有在主机的/opt下载资源可以给容器使用2、进入镜像
docker exec -it gomicro /bin/bash3、安装golang
在主机:wget https://studygolang.com/dl/golang/go1.9.2.linux-amd64.tar.gztar zxvf go1.9.2.linux-amd64.tar.gz在容器:cp go /usr/local/ -rfcd /;mkdir Golangcd Golang;mkdir src;mkdir pkg;mkdir bin 在/etc/profile文件尾部添加下面内容:export GOROOT=/usr/local/go export GOBIN=$GOROOT/binexport GOPKG=$GOROOT/pkg/tool/linux_amd64 export GOARCH=amd64export GOOS=linuxexport GOPATH=/Golangexport PATH=$PATH:$GOBIN:$GOPKG:$GOPATH/binsource /etc/profile注意:解压文件时遇到系统时间不对的问题:安装ntpdate工具# yum -y install ntp ntpdate设置系统时间与网络时间同步# ntpdate cn.pool.ntp.org将系统时间写入硬件时间# hwclock --systohc[root@a3bb11f6b1fa Golang]# go versiongo version go1.9.2 linux/amd644、安装micro环境
a) 依赖yum install -y git wgetb) 依赖 etcd(服务发现) go get -u -v github.com/coreos/etcd(如果失败,就到github上直接下载移动到指定目录:src/github.com/coreos/etcd/)cd etcd;./build;./bin/etcd &c) Go microgo get -u -v github.com/micro/go-microgo get -u -v github.com/micro/protobuf/{proto,protoc-gen-go}(https fetch failed: Get https://golang.org/x/net)想办法在github上下载cd /Golang/src/golang.org/x/git clone https://github.com/golang/text.gitgit clone https://github.com/golang/net.gitgit clone https://github.com/golang/crypto.gitd) Toolkitgo get -u -v github.com/micro/microgo get -u -v github.com/micro/go-pluginse) 例子go get -u -v github.com/micro/examplesf) 运行例子适配etcd./Golang/src/github.com/micro/examples/greeter/i. srvcd /Golang/src/github.com/micro/examples/greeter/srvvim main.go 添加_ "github.com/micro/go-plugins/registry/etcdv3"go build 报错:(cannot find google.golang.org/grpc)mkdir google.golang.org;cd google.golang.orggit clone https://github.com/grpc/grpc-go.gitmv grpc-go grpcgit clone https://github.com/google/go-genproto.gitmv go-genproto genproto进入srv然后重新go build;go install后台运行srv --registry=etcdv3 --registry_address=127.0.0.1:2379 &
ii. apicd /Golang/src/github.com/micro/examples/greeter/apivim api.go 添加_ "github.com/micro/go-plugins/registry/etcdv3"go build;go install后台运行api --registry=etcdv3 --registry_address=127.0.0.1:2379 &
iii. microcd /Golang/src/github.com/micro/micro vim main.go 添加_ "github.com/micro/go-plugins/registry/etcdv3"后台运行micro --registry=etcdv3 --registry_address=127.0.0.1:2379 api &
iv. 查看服务发现
v. 访问curl http://localhost:8080/greeter/say/hello?name=John href="https://oscdn.geek-share.com/Uploads/Images/Content/202003/04/33a35acbcf9673f55165197767520d11.png" target=_blank>
5、将被安装好的环境打包
docker export gomicro > gomicro.tar6、将环境导入成镜像
docker import gomicro.tar gomicrodocker imagesdocker run -it -v /opt:/wz -p 8080:8080 -p 8081:8081 -p 8082:8082 --name gomicro3 gomicro /sbin/init
docker run -it -v /opt:/wz -p 8080:8080 -p 8081:8081 -p 8082:8082 --name gomicro centos:latest /sbin/init-v是将主机的/opt目录映射到容器的/wz目录,所有在主机的/opt下载资源可以给容器使用2、进入镜像
docker exec -it gomicro /bin/bash3、安装golang
在主机:wget https://studygolang.com/dl/golang/go1.9.2.linux-amd64.tar.gztar zxvf go1.9.2.linux-amd64.tar.gz在容器:cp go /usr/local/ -rfcd /;mkdir Golangcd Golang;mkdir src;mkdir pkg;mkdir bin 在/etc/profile文件尾部添加下面内容:export GOROOT=/usr/local/go export GOBIN=$GOROOT/binexport GOPKG=$GOROOT/pkg/tool/linux_amd64 export GOARCH=amd64export GOOS=linuxexport GOPATH=/Golangexport PATH=$PATH:$GOBIN:$GOPKG:$GOPATH/binsource /etc/profile注意:解压文件时遇到系统时间不对的问题:安装ntpdate工具# yum -y install ntp ntpdate设置系统时间与网络时间同步# ntpdate cn.pool.ntp.org将系统时间写入硬件时间# hwclock --systohc[root@a3bb11f6b1fa Golang]# go versiongo version go1.9.2 linux/amd644、安装micro环境
a) 依赖yum install -y git wgetb) 依赖 etcd(服务发现) go get -u -v github.com/coreos/etcd(如果失败,就到github上直接下载移动到指定目录:src/github.com/coreos/etcd/)cd etcd;./build;./bin/etcd &c) Go microgo get -u -v github.com/micro/go-microgo get -u -v github.com/micro/protobuf/{proto,protoc-gen-go}(https fetch failed: Get https://golang.org/x/net)想办法在github上下载cd /Golang/src/golang.org/x/git clone https://github.com/golang/text.gitgit clone https://github.com/golang/net.gitgit clone https://github.com/golang/crypto.gitd) Toolkitgo get -u -v github.com/micro/microgo get -u -v github.com/micro/go-pluginse) 例子go get -u -v github.com/micro/examplesf) 运行例子适配etcd./Golang/src/github.com/micro/examples/greeter/i. srvcd /Golang/src/github.com/micro/examples/greeter/srvvim main.go 添加_ "github.com/micro/go-plugins/registry/etcdv3"go build 报错:(cannot find google.golang.org/grpc)mkdir google.golang.org;cd google.golang.orggit clone https://github.com/grpc/grpc-go.gitmv grpc-go grpcgit clone https://github.com/google/go-genproto.gitmv go-genproto genproto进入srv然后重新go build;go install后台运行srv --registry=etcdv3 --registry_address=127.0.0.1:2379 &
ii. apicd /Golang/src/github.com/micro/examples/greeter/apivim api.go 添加_ "github.com/micro/go-plugins/registry/etcdv3"go build;go install后台运行api --registry=etcdv3 --registry_address=127.0.0.1:2379 &
iii. microcd /Golang/src/github.com/micro/micro vim main.go 添加_ "github.com/micro/go-plugins/registry/etcdv3"后台运行micro --registry=etcdv3 --registry_address=127.0.0.1:2379 api &
iv. 查看服务发现
v. 访问curl http://localhost:8080/greeter/say/hello?name=John href="https://oscdn.geek-share.com/Uploads/Images/Content/202003/04/33a35acbcf9673f55165197767520d11.png" target=_blank>
5、将被安装好的环境打包
docker export gomicro > gomicro.tar6、将环境导入成镜像
docker import gomicro.tar gomicrodocker imagesdocker run -it -v /opt:/wz -p 8080:8080 -p 8081:8081 -p 8082:8082 --name gomicro3 gomicro /sbin/init
相关文章推荐
- Quick cocos2dx-Lua(V3.3R1)学习笔记(9)-----搭建安卓打包环境,用官方示例anysdk生成apk运行
- 雾山的Robotium学习笔记---环境搭建及入门示例
- php学习笔记1--运行环境的搭建
- cesium 学习笔记(一) cesium运行环境搭建
- Go语言学习笔记 - 环境搭建
- c++学习笔记(1)——环境搭建、经典教程推荐及 Visual Studio 2005/2008中如何编译和运行C++程序
- Docker学习笔记之一,搭建一个JAVA Tomcat运行环境
- Docker学习笔记之一,搭建一个JAVA Tomcat运行环境
- 区块链学习笔记(一)Ethereum-Go开发环境搭建
- Docker学习笔记之一,搭建一个JAVA Tomcat运行环境
- Docker学习笔记之一,搭建一个JAVA Tomcat运行环境
- Solr6.2.1 学习笔记(一)搭建运行环境(两种方式)
- Go语言学习笔记一——环境搭建
- 雾山的Robotium学习笔记---环境搭建及入门示例
- Robotium学习笔记---环境搭建及入门示例
- Django学习笔记(一)环境搭建基础教程示例
- 详解Docker学习笔记之搭建一个JAVA Tomcat运行环境
- Docker学习笔记之一,搭建一个JAVA Tomcat运行环境
- VUE学习笔记一:搭建基本运行环境