【问题标题】:Capistrano, disable deployed production applicationCapistrano,禁用已部署的生产应用程序
【发布时间】:2016-08-16 02:59:45
【问题描述】:

我已使用以下部署选项通过 capistrano 将我的应用程序部署到 VPS:

lock '3.4.1'

set :application, 'my-production-app'
set :repo_url, 'https://path.to.my.repo/my-production-app.git'

set :linked_dirs, %w(
  bin log vendor/bundle public/system
  tmp/pids tmp/cache tmp/sockets
)

set :puma_threads,    [4, 16]
set :puma_workers,    0

# This for carrierwave
set :linked_dirs, fetch(:linked_dirs) + %w{public/system public/uploads}

set :pty, true

set :use_sudo, true

set :puma_bind, "unix://#{shared_path}/tmp/sockets/#{fetch(:application)}-puma.sock"
set :puma_state,      "#{shared_path}/tmp/pids/puma.state"
set :puma_pid,        "#{shared_path}/tmp/pids/puma.pid"
set :puma_access_log, "#{release_path}/log/puma.error.log"
set :puma_error_log,  "#{release_path}/log/puma.access.log"

set :puma_preload_app, true
set :puma_worker_timeout, nil

然后我有nginx.conf 文件将用作网络服务器:

upstream puma_powerwifi {
  server unix:///var/www/my-production-app/shared/tmp/sockets/my-production-app-puma.sock;
}

server {
  listen 8888;
  # server_name example.com;

  root /var/www/my-production-app/current/public;
  access_log /var/www/my-production-app/current/log/nginx.access.log;
  error_log /var/www/my-production-app/current/log/nginx.error.log info;

  location ^~ /assets/ {
    gzip_static on;
    expires max;
    add_header Cache-Control public;
  }

  try_files $uri/index.html $uri @puma;
  location @puma {
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header Host $http_host;
    proxy_redirect off;

  proxy_pass http://puma_my_production;
  }

  error_page 500 502 503 504 /500.html;
  client_max_body_size 10M;
  keepalive_timeout 10;
}

当我将应用程序部署到服务器时,它运行良好。现在我想关掉它,我不知道怎么做。

如何安全禁用通过 capistrano 部署的 Rails 生产应用程序?

【问题讨论】:

    标签: ruby-on-rails nginx capistrano


    【解决方案1】:

    停止 Puma 服务器将禁用应用程序。

    您可以使用部署(本地)机器上的bundle exec cap production puma:stop 来完成。

    bundle exec cap production puma:start重新开始。

    这假设您使用的是capistrano-puma gem,看起来您是基于您发布的配置。请注意,这只会禁用 Rails 应用程序,您的 VPS 和 Nginx 会继续运行。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-10-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多