您的位置:首页 > 编程语言 > Go语言

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
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  go micro