快速开始
本文用于帮助初次接触 MOSN 项目的开发人员,快速搭建开发环境,完成构建,测试,打包和事例代码的运行。
注:MOSN 基于 GoLang 1.9.2 研发,使用 dep 进行依赖管理
准备运行环境
获取代码
MOSN 项目的代码托管在 github,获取方式如下:
go get github.com/alipay/sofa-mosn
如果你的 go get 下载存在问题,请手动创建项目工程
# 进入GOPATH下的src目录
cd $GOPATH/src
# 创建 github.com/alipay 目录
mkdir -p github.com/alipay
cd github.com/alipay
# clone mosn代码
git clone git@github.com:alipay/sofa-mosn.git
cd sofa-mosn
最终MOSN的源代码代码路径为 $GOPATH/src/github.com/alipay/sofa-mosn
导入IDE
使用您喜爱的Golang IDE导入 $GOPATH/src/github.com/alipay/sofa-mosn
项目,推荐Goland。
编译代码
在项目根目录下,根据自己机器的类型以及欲执行二进制的环境,选择以下命令编译 MOSN 的二进制文件:
- 使用 docker 镜像编译
make build // 编译出 linux 64bit 可运行二进制文件
- 非 docker,本地编译
- 编译本地可运行二进制文件
make build-local
- 非 linux 机器交叉编译 linux 64bit 可运行二进制文件
make build-linux64
- 非 linux 机器交叉编译 linux 32bit 可运行二进制文件
完成后可以在make build-linux32
build/bundles/${version}/binary
目录下找到编译好的二进制文件。
- 编译本地可运行二进制文件
打包
- 在项目根目录下执行如下命令进行打包:
make rpm
完成后可以在 build/bundles/${version}/rpm
目录下找到打包好的文件。
创建镜像
- 执行如下命令进行镜像创建:
make image
获取镜像
docker pull sofastack/mosn
运行测试
在项目根目录下执行如下命令运行单元测试:
make unit-test
从配置文件启动 MOSN
./mosn start -c '$CONFIG_FILE'
开启 MOSN 转发事例程序
参考 examples
目录下的示例工程