【问题标题】:Can we deploy one Rails app to multiple servers at once with Capistrano?我们可以使用 Capistrano 一次将一个 Rails 应用程序部署到多台服务器吗?
【发布时间】:2017-10-17 15:04:16
【问题描述】:

我有一个 Rails 应用程序,我必须将一个应用程序部署到多个生产主机/服务器有一个原因。

目前,我必须将一个 Rails 应用程序部署到两台主机。所以,我必须做两次cap production deploy。而且我必须一个接一个地注释掉服务器行。

# server 'host_1', user: 'my_user', roles: %w{app}
server 'host_2', user: 'my_user', roles: %w{app} 

我有config/deploy/production.rbconfig/environments/production.rb

Ruby 2.3.3
Rails 4.2.2
capistrano-rails 1.1.1

【问题讨论】:

  • 我曾在类似情况下工作过,在我们的案例中,问题是应用架构无法处理多个公司。有用户,但每个项目都代表一家公司。从长远来看,这变成了维护不同的机器,每家公司一台。对于开发团队来说,这变得代价高昂且士气低落。也许预算限制不会让您拥有所需的控制程度,但随着时间的推移,最好尽快完成。
  • @cutiko 如果我没记错的话,你的应用是一种 SaaS,不是吗?
  • @PirungSeng 是 SaaS
  • @cutiko 你在为你的数据库使用 PostgreSQL 吗?我只是想知道您的问题是否与数据存储有关,而不是服务器。
  • @PirungSeng 问题出在数据库架构上,它没有为支持更多客户(公司)快速获得 MVP 而建模。关于你的问题,你有什么想说的吗,也许我可以帮忙?

标签: ruby-on-rails-4 capistrano


【解决方案1】:

Cap 是一个远程多服务器自动化工具。为实现您的目标,只需保留两台床单的注释即可,您将能够部署到两台服务器

server 'host_1', user: 'my_user', roles: %w{app}
server 'host_2', user: 'my_user', roles: %w{app}

【讨论】:

    猜你喜欢
    • 2023-04-09
    • 1970-01-01
    • 2010-12-12
    • 1970-01-01
    • 2017-12-27
    • 1970-01-01
    • 2011-02-07
    • 2016-04-30
    • 2014-05-26
    相关资源
    最近更新 更多