快速开始

本文用于帮助初次接触 MOSN 项目的开发人员,快速搭建开发环境,完成构建,测试和打包。
MOSN 基于 Golang 1.9.2 研发,使用dep进行依赖管理

准备运行环境

  • 如果你使用容器运行MOSN, 请先 安装docker
  • 如果你使用本地机器,请使用类unix环境
  • 安装 go 的编译环境
  • 安装 dep : 参考官方安装文档

获取代码

MOSN 项目的代码托管在 github,获取方式如下:

  1. go get github.com/alipay/sofa-mosn

如果你的 go get 下载存在问题,请手动创建项目工程

  1. # 进入GOPATH下的src目录
  2. cd $GOPATH/src
  3. # 创建 github.com/alipay 目录
  4. mkdir -p github.com/alipay
  5. cd github.com/alipay
  6. # clone mosn代码
  7. git clone git@github.com:alipay/sofa-mosn.git
  8. cd sofa-mosn

最终MOSN的源代码代码路径为 $GOPATH/src/github.com/alipay/sofa-mosn

导入IDE

使用您喜爱的Golang IDE导入 $GOPATH/src/github.com/alipay/sofa-mosn 项目,推荐Goland。

编译代码

在项目根目录下执行如下命令编译 MOSN 的二进制文件:

  1. dep ensure // dep速度较慢,耐心等待
  2. make build //使用docker编译
  3. // or
  4. make build-local // 使用本地的go编译环境

完成后可以在 build/bundles/${version}/binary 目录下找到编译好的二进制文件。

打包

  • 在项目根目录下执行如下命令进行打包:
  1. make rpm

完成后可以在 build/bundles/${version}/rpm 目录下找到打包好的文件。

运行测试

在项目根目录下执行如下命令运行单元测试:

  1. make unit-test

单独运行 MOSN 作为 proxy 转发的示例:

  • 参考 sofa-mosn/test/ 下的示例

从配置文件启动 MOSN

  1. mosn start -c '$CONFIG_FILE'

如何快速启动一个 mosn 的转发程序

参考 examples 目录下的示例工程