我们很高兴地宣布,Zeabur针对Ruby应用程序推出了多项新功能,以增强部署体验。这些更新提供了更大的灵活性和控制权,从而使您的Ruby服务设置过程更加顺畅和个性化。
首先,您可以通过环境变量ZBPACK_BUILD_COMMAND
定义在构建过程中初始化Ruby服务的命令:
ZBPACK_BUILD_COMMAND="bash scripts/build-ruby-assets.sh"
或者在zbpack.json
中使用build_command
:
{
"build_command": "bash scripts/build-ruby-assets.sh"
}
这将在服务构建完成的最后阶段执行。
我们还允许用户通过设置环境变量ZBPACK_START_COMMAND
或在zbpack.json
中使用start_command
来指定启动Ruby服务的命令:
ZBPACK_START_COMMAND="bundle exec puma -C config/puma.rb"
或者在zbpack.json
中:
{
"start_command": "bundle exec puma -C config/puma.rb"
}
请注意,此选项会覆盖ZBPACK_RUBY_ENTRY
选项。
通过设置环境变量ZBPACK_RUBY_VERSION
或在zbpack.json
中使用ruby.version
,您可以自定义服务使用的Ruby版本。
ZBPACK_RUBY_VERSION="3.0.2"
或者在zbpack.json
中:
{
"ruby": {
"version": "3.0.2"
}
}
通过设置环境变量ZBPACK_RUBY_ENTRY
或在zbpack.json
中使用ruby.entry
,您可以覆盖服务的默认入口点。
ZBPACK_RUBY_ENTRY="app.rb"
或者在zbpack.json
中:
{
"ruby": {
"version": "3.0.2"
}
}
这是一个简化的ZBPACK_START_COMMAND
选项,允许您指定运行的Ruby文件:
ruby [the-entrypoint-to-run.rb]
如果您设置了ZBPACK_START_COMMAND
,我们将优先采用ZBPACK_START_COMMAND
而不是此选项。
下面是如何在zbpack.json
文件中配置这些设置的示例:
{
"build_command": "bash scripts/build-ruby-assets.sh",
"start_command": "bundle exec puma -C config/puma.rb",
"ruby": {
"version": "3.0.2"
}
}
或者使用entry
替代start_command
:
{
"build_command": "bash scripts/build-ruby-assets.sh",
"ruby": {
"version": "3.0.2"
},
"entry": "app.rb"
}
这些新配置让您能够精确地根据需求定制Ruby应用程序的构建和运行环境。通过利用ZBPACK_BUILD_COMMAND
、ZBPACK_START_COMMAND
、ZBPACK_RUBY_VERSION
和ZBPACK_RUBY_ENTRY
,您可以确保Zeabur上更可预测和流畅的部署过程。
我们希望这些改进能够提升您的部署体验。祝您编码愉快!