Skip to content

runner for rainbond

License

Notifications You must be signed in to change notification settings

goodrain/runner

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

59 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Runner

用来运行 builder 制作的tgz文件,每一个源码构建的应用都是由runner镜像加载运行的。

Runner 运行原理

通过标准输入,文件挂载或者URL的形式将 压缩后 的应用程序(代码,运行时)传入到Runner镜像并运行。镜像的入口文件会读取Procfile中的内容并运行。

如何使用 Runner

Rainbond 安装后该镜像自动在计算节点拉取,不需要人工干预。下面主要介绍手动通过runner镜像运行builder生成的压缩包的场景。

  • 可以通过标准输入将压缩包载入到runner镜像,并运行:
$ cat myslug.tgz | docker run -i -a stdin -a stdout goodrain.me/runner
  • 可以通过挂载 slug 包的方式运行:
$ docker run -dti --name=runner \
-v path/to/myslug.tgz:/tmp/slug/slug.tgz \
-p 5000:5000 \
goodrain.me/runner

压缩包的内容会在runner容器启动后解压到 /app 目录,在正式启动应用程序之前,会先导入代码目录下 .profile.d 中的文件,这里会有应用程序所需要的环境变量。

最终,runner镜像的引导程序会读取代码目录下的Procfile文件,并启动应用程序。如果用户代码根目录中没有该文件,在builer构建时会根据用户在创建应用向导中的选择自动生成。