Ruby: 为 Stackhero 部署创建 Makefile

本文档属于部署到生产环境指南的一部分。您可以在此处查看完整指南:使用 Stackhero 在几分钟内将 Ruby 代码部署到生产环境

👋 欢迎查阅 Stackhero 文档!

Stackhero 提供即开即用的 Ruby cloud 解决方案,带来诸多优势,包括:

  • 只需一次简单的 git push,即可在几秒钟内部署您的应用。
  • 支持自定义域名,并自动配置 HTTPS 证书,提升安全性。
  • 享受自动备份一键更新,以及简单、透明、可预测的定价
  • 依托专属私有基础设施,实现卓越的性能与强大的安全性

节省时间,简化流程:仅需5分钟即可体验 Stackhero 的 Ruby cloud hosting 解决方案!

为了让 Stackhero 知道如何运行您的应用,请在项目根目录添加一个 Makefile 文件。该文件定义了 Stackhero 部署时会执行的命令。

如果您不熟悉 Makefile 或 make 命令,下面的步骤会指导您创建一个可用的 Makefile。

创建一个 Makefile,内容如下:

run:
	rake assets:precompile
	rake db:migrate RAILS_ENV=production
	RAILS_ENV=production bundle exec puma -C config/puma.rb

该 Makefile 的作用:

  1. run 规则是必需的。Stackhero 会以此规则作为部署入口。请保持该规则名称不变。
  2. 示例中使用了 rakebundle,您可根据实际应用调整命令。
  3. 每行命令必须以制表符(Tab)开头,不能用空格。如果遇到 *** missing separator 错误,请检查是否使用了 Tab。

上述示例中,部署流程将:

  1. 预编译 JavaScript 和 CSS 等静态资源到 public/assets 目录。
  2. 执行数据库迁移。
  3. 启动 Puma 服务器以对外提供服务。