- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
这是我的第一次部署 - 我根据 GoRails 教程完成的所有步骤:https://gorails.com/deploy/ubuntu/16.04
在“cap生产部署”命令之后,我收到该错误消息:
MacBook-Pro:app admin$ cap production deploy --trace
** Invoke production (first_time)
** Execute production
** Invoke load:defaults (first_time)
** Execute load:defaults
cap aborted!
Don't know how to build task 'deploy:setup' (see --tasks)
出了什么问题?
“cap生产部署--trace”的结果:
MacBook-Pro:app admin$ cap production deploy --trace
** Invoke production (first_time)
** Execute production
** Invoke load:defaults (first_time)
** Execute load:defaults
cap aborted!
Don't know how to build task 'deploy:setup' (see --tasks)
/Users/admin/.rvm/gems/ruby-2.3.1/gems/rake-11.2.2/lib/rake/task_manager.rb:71:in `[]'
/Users/admin/.rvm/gems/ruby-2.3.1/gems/rake-11.2.2/lib/rake/task.rb:361:in `[]'
/Users/admin/.rvm/gems/ruby-2.3.1/gems/capistrano-3.6.1/lib/capistrano/dsl/task_enhancements.rb:7:in `before'
config/deploy.rb:27:in `<top (required)>'
/Users/admin/.rvm/gems/ruby-2.3.1/gems/capistrano-3.6.1/lib/capistrano/setup.rb:27:in `load'
/Users/admin/.rvm/gems/ruby-2.3.1/gems/capistrano-3.6.1/lib/capistrano/setup.rb:27:in `block (3 levels) in <top (required)>'
/Users/admin/.rvm/gems/ruby-2.3.1/gems/capistrano-3.6.1/lib/capistrano/configuration/variables.rb:32:in `untrusted!'
/Users/admin/.rvm/rubies/ruby-2.3.1/lib/ruby/2.3.0/delegate.rb:83:in `method_missing'
/Users/admin/.rvm/gems/ruby-2.3.1/gems/capistrano-3.6.1/lib/capistrano/setup.rb:26:in `block (2 levels) in <top (required)>'
/Users/admin/.rvm/gems/ruby-2.3.1/gems/rake-11.2.2/lib/rake/task.rb:248:in `block in execute'
/Users/admin/.rvm/gems/ruby-2.3.1/gems/rake-11.2.2/lib/rake/task.rb:243:in `each'
/Users/admin/.rvm/gems/ruby-2.3.1/gems/rake-11.2.2/lib/rake/task.rb:243:in `execute'
/Users/admin/.rvm/gems/ruby-2.3.1/gems/rake-11.2.2/lib/rake/task.rb:187:in `block in invoke_with_call_chain'
/Users/admin/.rvm/rubies/ruby-2.3.1/lib/ruby/2.3.0/monitor.rb:214:in `mon_synchronize'
/Users/admin/.rvm/gems/ruby-2.3.1/gems/rake-11.2.2/lib/rake/task.rb:180:in `invoke_with_call_chain'
/Users/admin/.rvm/gems/ruby-2.3.1/gems/rake-11.2.2/lib/rake/task.rb:173:in `invoke'
/Users/admin/.rvm/gems/ruby-2.3.1/gems/rake-11.2.2/lib/rake/application.rb:152:in `invoke_task'
/Users/admin/.rvm/gems/ruby-2.3.1/gems/rake-11.2.2/lib/rake/application.rb:108:in `block (2 levels) in top_level'
/Users/admin/.rvm/gems/ruby-2.3.1/gems/rake-11.2.2/lib/rake/application.rb:108:in `each'
/Users/admin/.rvm/gems/ruby-2.3.1/gems/rake-11.2.2/lib/rake/application.rb:108:in `block in top_level'
/Users/admin/.rvm/gems/ruby-2.3.1/gems/rake-11.2.2/lib/rake/application.rb:117:in `run_with_threads'
/Users/admin/.rvm/gems/ruby-2.3.1/gems/rake-11.2.2/lib/rake/application.rb:102:in `top_level'
/Users/admin/.rvm/gems/ruby-2.3.1/gems/rake-11.2.2/lib/rake/application.rb:80:in `block in run'
/Users/admin/.rvm/gems/ruby-2.3.1/gems/rake-11.2.2/lib/rake/application.rb:178:in `standard_exception_handling'
/Users/admin/.rvm/gems/ruby-2.3.1/gems/rake-11.2.2/lib/rake/application.rb:77:in `run'
/Users/admin/.rvm/gems/ruby-2.3.1/gems/capistrano-3.6.1/lib/capistrano/application.rb:14:in `run'
/Users/admin/.rvm/gems/ruby-2.3.1/gems/capistrano-3.6.1/bin/cap:3:in `<top (required)>'
/Users/admin/.rvm/gems/ruby-2.3.1/bin/cap:23:in `load'
/Users/admin/.rvm/gems/ruby-2.3.1/bin/cap:23:in `<main>'
/Users/admin/.rvm/gems/ruby-2.3.1/bin/ruby_executable_hooks:15:in `eval'
/Users/admin/.rvm/gems/ruby-2.3.1/bin/ruby_executable_hooks:15:in `<main>'
Tasks: TOP => production
我尝试过“cap deploy:check --trace”:
MacBook-Pro:app admin$ cap deploy:check --trace
** Invoke ensure_stage (first_time)
** Execute ensure_stage
** Invoke deploy:check (first_time)
** Execute deploy:check
cap aborted!
Don't know how to build task ':check' (see --tasks)
/Users/admin/.rvm/gems/ruby-2.3.1/gems/rake-11.2.2/lib/rake/task_manager.rb:71:in `[]'
/Users/admin/.rvm/gems/ruby-2.3.1/gems/rake-11.2.2/lib/rake/task.rb:361:in `[]'
/Users/admin/.rvm/gems/ruby-2.3.1/gems/capistrano-3.6.1/lib/capistrano/dsl.rb:15:in `invoke'
/Users/admin/.rvm/gems/ruby-2.3.1/gems/capistrano-3.6.1/lib/capistrano/tasks/deploy.rake:56:in `block (2 levels) in <top (required)>'
/Users/admin/.rvm/gems/ruby-2.3.1/gems/rake-11.2.2/lib/rake/task.rb:248:in `block in execute'
/Users/admin/.rvm/gems/ruby-2.3.1/gems/rake-11.2.2/lib/rake/task.rb:243:in `each'
/Users/admin/.rvm/gems/ruby-2.3.1/gems/rake-11.2.2/lib/rake/task.rb:243:in `execute'
/Users/admin/.rvm/gems/ruby-2.3.1/gems/rake-11.2.2/lib/rake/task.rb:187:in `block in invoke_with_call_chain'
/Users/admin/.rvm/rubies/ruby-2.3.1/lib/ruby/2.3.0/monitor.rb:214:in `mon_synchronize'
/Users/admin/.rvm/gems/ruby-2.3.1/gems/rake-11.2.2/lib/rake/task.rb:180:in `invoke_with_call_chain'
/Users/admin/.rvm/gems/ruby-2.3.1/gems/rake-11.2.2/lib/rake/task.rb:173:in `invoke'
/Users/admin/.rvm/gems/ruby-2.3.1/gems/rake-11.2.2/lib/rake/application.rb:152:in `invoke_task'
/Users/admin/.rvm/gems/ruby-2.3.1/gems/rake-11.2.2/lib/rake/application.rb:108:in `block (2 levels) in top_level'
/Users/admin/.rvm/gems/ruby-2.3.1/gems/rake-11.2.2/lib/rake/application.rb:108:in `each'
/Users/admin/.rvm/gems/ruby-2.3.1/gems/rake-11.2.2/lib/rake/application.rb:108:in `block in top_level'
/Users/admin/.rvm/gems/ruby-2.3.1/gems/rake-11.2.2/lib/rake/application.rb:117:in `run_with_threads'
/Users/admin/.rvm/gems/ruby-2.3.1/gems/rake-11.2.2/lib/rake/application.rb:102:in `top_level'
/Users/admin/.rvm/gems/ruby-2.3.1/gems/rake-11.2.2/lib/rake/application.rb:80:in `block in run'
/Users/admin/.rvm/gems/ruby-2.3.1/gems/rake-11.2.2/lib/rake/application.rb:178:in `standard_exception_handling'
/Users/admin/.rvm/gems/ruby-2.3.1/gems/rake-11.2.2/lib/rake/application.rb:77:in `run'
/Users/admin/.rvm/gems/ruby-2.3.1/gems/capistrano-3.6.1/lib/capistrano/application.rb:14:in `run'
/Users/admin/.rvm/gems/ruby-2.3.1/gems/capistrano-3.6.1/bin/cap:3:in `<top (required)>'
/Users/admin/.rvm/gems/ruby-2.3.1/bin/cap:23:in `load'
/Users/admin/.rvm/gems/ruby-2.3.1/bin/cap:23:in `<main>'
/Users/admin/.rvm/gems/ruby-2.3.1/bin/ruby_executable_hooks:15:in `eval'
/Users/admin/.rvm/gems/ruby-2.3.1/bin/ruby_executable_hooks:15:in `<main>'
Tasks: TOP => deploy:check
config/deploy.rb(更新 capistrano 3.1 -> 3.6.1):
# config valid only for Capistrano 3.1
lock '3.6.1'
set :application, 'app'
set :rvm_type, :system
set :deploy_to, "/var/www/app/production"
set :deploy_via, :copy
set :use_sudo, false
set :repository, "/var/repos/app.git"
set :local_repository, "ssh://<a href="https://stackoverflow.com/cdn-cgi/l/email-protection" class="__cf_email__" data-cfemail="81e5e4f1edeef8c1b9b9afb9b9afb9b9afb9b9" rel="noreferrer noopener nofollow">[email protected]</a>/var/repos/app.git"
set :user, "deploy"
set :rails_env, "production"
before 'deploy:setup', 'rvm:install_rvm'
set :scm, :git
# Default value for :linked_files is []
set :linked_files, %w{config/database.yml}
# Default value for linked_dirs is []
set :linked_dirs, %w{bin log tmp/pids tmp/cache tmp/sockets vendor/bundle public/system}
namespace :deploy do
desc 'Restart application'
task :restart do
on roles(:app), in: :sequence, wait: 5 do
# Your restart mechanism here, for example:
execute :touch, release_path.join('tmp/restart.txt')
end
end
after :publishing, :restart
after :restart, :clear_cache do
on roles(:web), in: :groups, limit: 3, wait: 10 do
# Here we can do anything such as:
# within release_path do
# execute :rake, 'cache:clear'
# end
end
end
end
配置/部署/生产.rb
role :app, %w{<a href="https://stackoverflow.com/cdn-cgi/l/email-protection" class="__cf_email__" data-cfemail="74101104181b0d344c4c5a4c4c5a4c4c5a4c4c" rel="noreferrer noopener nofollow">[email protected]</a>}
role :web, %w{<a href="https://stackoverflow.com/cdn-cgi/l/email-protection" class="__cf_email__" data-cfemail="44202134282b3d047c7c6a7c7c6a7c7c6a7c7c" rel="noreferrer noopener nofollow">[email protected]</a>}
role :db, %w{<a href="https://stackoverflow.com/cdn-cgi/l/email-protection" class="__cf_email__" data-cfemail="85e1e0f5e9eafcc5bdbdabbdbdabbdbdabbdbd" rel="noreferrer noopener nofollow">[email protected]</a>}
server '88.88.88.88', user: 'deploy', roles: %w{web app}, my_property: :my_value
Cap文件
# Load DSL and Setup Up Stages
require 'capistrano/setup'
set :stage, :production
# Includes default deployment tasks
require 'capistrano/deploy'
# Loads custom tasks from `lib/capistrano/tasks' if you have any defined.
Dir.glob('lib/capistrano/tasks/*.cap').each { |r| import r }
require 'capistrano/bundler'
require 'capistrano/rails'
# If you are using rbenv add these lines:
# require 'capistrano/rbenv'
# set :rbenv_type, :user # or :system, depends on your rbenv setup
# set :rbenv_ruby, '2.0.0-p451'
# If you are using rvm add these lines:
require 'capistrano/rvm'
set :rvm_type, :user
set :rvm_ruby_version, '2.3.1-p112'
gem 文件
...
# CAPISTRANO gem
gem 'capistrano'
gem 'capistrano-bundler'
gem 'capistrano-rails'
# Add this if you're using rvm
gem 'capistrano-rvm', github: "capistrano/rvm"
最佳答案
那个教程已经过时了。以下是我要更改的内容(从 Capistrano 设置标题开始):
对于 rbenv 和 rvm gemfile 条目,删除 github: 'something'
部分。已发布的 Gem 版本长期稳定。
在 Capfile 中,require
是正确的那里有几行,但是 set
行应位于 config/deploy.rb
.
在 config/deploy.rb
,重启部分可以完全替换为 capistrano-passenger gem 。 Gem 的自述文件包含安装说明。一般来说,它将使用乘客命令来执行应用程序重新启动,但您也可以告诉它使用与重新启动部分所做的相同的触摸方法。您还可以删除 after :finishing, 'deploy:cleanup'
线。
在 config/deploy/production.rb
,您可以删除 set :stage, 'production'
。仅当舞台与文件名不同时才需要设置舞台。
此外,请通过运行 bundle update gemname
来确保您正在运行所有相关 gem 的最新版本。 .
关于ruby-on-rails - Rails 5 部署到 VPS - capistrano 错误 "Don' 不知道如何构建任务 'deploy:setup' ",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39151587/
我一直在阅读一篇标题为 Don’t Be Scared Of Functional Programming 的文章并且有一段代码我无法理解(粘贴在下面)。该代码的目的是从名为 data 的对象数组中获
我现在还没有想到这一点。 到目前为止,每当设备要求我使用位置更新时,我都会允许。 但是现在我不允许,那么位置管理器会给我 kclErrorDenied 并且位置管理器无法再次启动,直到我重新启动应用程
如何重构我的代码以消除 JSLinter 中的此错误?我尝试将整个函数移至 var,但此后代码无法运行。 for (i = 0; i < timeDifference; i++) { ti
假设我们有一个包含 3 列的数据框,代表 3 种不同的情况,每一种都可以是状态 0 或 1。第四列包含一个测量值。 set.seed(123) df 2 0 0 1 0.4571073 3
“函数模板的特化不参与重载解析。仅考虑基本模板”的真正含义是什么 我用其专用版本编写了一个简单的模板函数,并且可以看到调用了专用: // Base template template T max(T
假设我们有一个包含 3 列的数据框,代表 3 种不同的情况,每一种都可以是状态 0 或 1。第四列包含一个测量值。 set.seed(123) df 2 0 0 1 0.4571073 3
在 C++/MFC 中,显示带有“不再显示”选项的消息框的最简单方法是什么? 在我的例子中,我只想要一个简单的 MB_OK 消息框(一个 OK 按钮)。 最佳答案 或者只使用 SHMessageBox
我正在尝试为我的 ios 应用程序设置一个谷歌登录,为此我需要 CocoaPods。但是当像在终端上有自己的网站一样安装它时,我得到了这个: $ sudo gem install cocoapods
这些年来,我肯定以某种方式忽略了“告诉,不要问” OOP原则,因为我是几天前才第一次了解它。 但是上下文是关于已从ASP.NET Web表单页面移到数据/业务对象中的验证代码的讨论,并且没有“Vali
我在 The Sims Social 应用程序中看到请求对话框中有一个复选框选项,上面写着:“在向 发送 The Sims Social 请求之前不要询问。” 我还没有在 Facebook API D
我正在阅读 Thread and Processes 之间的区别并在第二个答案中发现了用户留下的评论,其中指出 As so long as you don't format a floppy at t
*、?、+ 字符均表示匹配该字符。哪个字符表示“不”匹配这个?例子会有所帮助。 最佳答案 您可以使用否定字符类来排除某些字符:例如,[^abcde] 将匹配除 a、b、c、d、e 字符之外的任何字符。
至少在 Pixel 手机上,可以将手机从设置中静音。但是,从屏幕截图中可以看出,我没有找到任何将手机设置为这种模式的 Android API。 如果我使用 AudioManager使用 setRing
我的应用程序需要权限才能运行。如果用户拒绝初始运行的权限,它将关闭。如果他们第二次运行应用程序并再次拒绝权限,第三次尝试运行应用程序并请求权限时,对话框中还会出现一个单选按钮,其中包含“不再询问”选项
制作了一个群发信使和一个多消息/垃圾邮件发送者合二为一,工作正常,只是想让它变得更好。显然,我必须编写代码让 Skype 允许该程序,这样它才能做它做的事情,就在这里, private voi
我正在尝试创建一个对话框以在我的应用程序中显示一条介绍消息,其下方有一个“不再显示”复选框。不会写代码。 @Override protected void onStart() {
我有一个特性,可以为微 Controller 指定允许的引脚配置: pub trait TimChannelsMapping: Sized { const MAPPING: u8; } 它是这
我有一组位模式,想在该组中找到与给定输入匹配的元素的索引。位模式包含“无关”位,即匹配 0 和 1 的 x-es。 例子位模式集是 index abcd 0 00x1 1 01xx
在 Android 中,如果您请求权限,第二次请求允许用户选中“不要再问我”,因此将来总是会达到失败状态。 如果用户改变主意并想要允许权限,但现在不能,因为该功能默认为权限失败状态,该怎么办?用户如何
当我在模拟器中运行时,我的 android 应用程序有以下几种形式的警告: "Resources don't contain package for resource number " 如何修复这些警
我是一名优秀的程序员,十分优秀!