gpt4 book ai didi

ruby - 在 Debian squeeze 64bits 上安装 Webistrano

转载 作者:太空宇宙 更新时间:2023-11-03 16:54:56 25 4
gpt4 key购买 nike

我目前正在尝试在新安装的 debian squeeze 64 位上安装 Webistrano,但我遇到了一些我无法解决的问题。

注意:机器是在Xen环境下创建的,我认为这不会影响程序,但是提一下似乎很重要。


程序:

信息:

  • Ruby 版本:ruby 1.8.7 (2010-08-16 patchlevel 302) [x86_64-linux]
  • Rails 版本:`Rails 2.3.11
  • 路径修饰符:/usr/lib/ruby/1.8:/var/lib/gems/1.8/bin
  • Rails 环境:开发
  • 数据库已创建
  • 我认为 webistrano 的数据库设置是正确的 (user/pass/path_to_sock_file)

所以,这是我所做的:

我首先为此类安装安装了“基础”包:

# apt-get install build-essential ruby rubygems libmysql-ruby libmysqlclient-dev libdbd-mysql-ruby mysql-server unzip rake

然后我一直在下载工程,解压到/usr/src。在为电子邮件/数据库设置复制和配置文件后(如 https://github.com/peritor/webistrano 所建议),我继续安装项目所需的所有 gem:

bundle install

此时,命令卡住了,一个小时内没有执行任何操作。

我知道如果 Gemfile 很复杂就会发生这种情况,但对我来说似乎并非如此。 (参见下面的 Gemfile)

# cat Gemfile
source "http://rubygems.org"

gem 'bundler', "~>1.0.10"
gem "rails", "2.3.11"
gem "mysql"
gem "erubis"
gem "rake"
gem "syntax", "1.0.0"
gem "capistrano", "2.6.0"
gem "open4", "0.9.3"
gem "exception_notification", "2.3.3.0"

group :test do
gem "mocha", "0.9.8"
end

所以决定继续我手动安装 gems,完成后给出:

# gem list *gems of Gemfile*
bundler (1.0.10)
rails (2.3.11)
mysql (2.8.1)
erubis (2.7.0)
rake (0.9.2.2)
syntax (1.0.0)
capistrano (2.6.0)
open4 (0.9.3)
exception_notification (2.3.3.0)
mocha (0.9.8)

所以我相信一切都应该无需运行即可运行:bundle install

这就是我最终尝试用 rake 创建数据库结构的原因:

# rake db:migrate --trace
(in /usr/src/peritor-webistrano-a98ba6b)
rake aborted!
Bundler couldn't find some gems.Did you run `bundle install`?
/usr/src/peritor-webistrano-a98ba6b/config/../config/preinitializer.rb:18
/usr/src/peritor-webistrano-a98ba6b/config/boot.rb:28:in `load'
/usr/src/peritor-webistrano-a98ba6b/config/boot.rb:28:in `preinitialize'
/usr/src/peritor-webistrano-a98ba6b/config/boot.rb:10:in `boot!'
/usr/src/peritor-webistrano-a98ba6b/config/boot.rb:123
/usr/src/peritor-webistrano-a98ba6b/Rakefile:4:in `require'
/usr/src/peritor-webistrano-a98ba6b/Rakefile:4
/usr/lib/ruby/1.8/rake.rb:2383:in `load'
/usr/lib/ruby/1.8/rake.rb:2383:in `raw_load_rakefile'
/usr/lib/ruby/1.8/rake.rb:2017:in `load_rakefile'
/usr/lib/ruby/1.8/rake.rb:2068:in `standard_exception_handling'
/usr/lib/ruby/1.8/rake.rb:2016:in `load_rakefile'
/usr/lib/ruby/1.8/rake.rb:2000:in `run'
/usr/lib/ruby/1.8/rake.rb:2068:in `standard_exception_handling'
/usr/lib/ruby/1.8/rake.rb:1998:in `run'
/usr/bin/rake:28

根据 rake 错误消息,显然有些 gems 没有正确安装,这看起来很奇怪,但我猜他找不到它。

所以我用捆绑工具仔细检查:

# bundle check
Your Gemfile's dependencies could not be satisfied
Install missing gems with `bundle install`
# bundle show
Could not find gem 'mocha (= 0.9.8, runtime)' in any of the gem sources listed in your Gemfile.

我被困在这里,我只是不知道如何继续。我用 google 搜索了有关 mocha 或 gemfile 的问题,但没有找到太多相关信息。

我希望一切都清晰易懂,因为这是我的第一篇文章。

感谢您的任何回复/提示,如果我设法改进,我会尽力让您了解最新信息!

最佳答案

检查这些说明: http://www.gogolek.co.uk/blog/2012/10/web-application-deployment-webistrano-capistrano/

此外,我在干净的 debian 6 64 位上安装 mysql gem 时遇到问题,所以我必须运行

$ apt-get install libmysqlclient-dev ruby-dev 

我最终安装了以下 gem

Using rake (0.8.7) 
Using activesupport (2.3.11)
Using rack (1.1.6)
Using actionpack (2.3.11)
Using actionmailer (2.3.11)
Using activerecord (2.3.11)
Using activeresource (2.3.11)
Using bundler (1.0.10)
Using highline (1.6.20)
Using net-ssh (2.7.0)
Using net-scp (1.1.2)
Using net-sftp (2.1.2)
Using net-ssh-gateway (1.2.0)
Using capistrano (2.6.0)
Using erubis (2.7.0)
Using exception_notification (2.3.3.0)
Using mocha (0.9.8)
Installing mysql (2.9.1) with native extensions
Installing open4 (0.9.3)
Installing rails (2.3.11)
Installing syntax (1.0.0)
Your bundle is updated! Use `bundle show [gemname]` to see where a bundled gem is installed.

关于ruby - 在 Debian squeeze 64bits 上安装 Webistrano,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12676485/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com