我已经在Google上搜索了很多,还没有发现任何对我的情况有用的东西。
$ docker-compose up abc
在日志中产生以下内容:
/usr/lib/ruby/vendor_ruby/bundler/spec_set.rb:92:in `block in materialize': Could not find concurrent-ruby-1.0.5 in any of the sources (Bundler::GemNotFound)
from /usr/lib/ruby/vendor_ruby/bundler/spec_set.rb:85:in `map!'
from /usr/lib/ruby/vendor_ruby/bundler/spec_set.rb:85:in `materialize'
from /usr/lib/ruby/vendor_ruby/bundler/definition.rb:132:in `specs'
from /usr/lib/ruby/vendor_ruby/bundler/definition.rb:177:in `specs_for'
from /usr/lib/ruby/vendor_ruby/bundler/definition.rb:166:in `requested_specs'
from /usr/lib/ruby/vendor_ruby/bundler/environment.rb:18:in `requested_specs'
from /usr/lib/ruby/vendor_ruby/bundler/runtime.rb:13:in `setup'
from /usr/lib/ruby/vendor_ruby/bundler.rb:121:in `setup'
from /usr/lib/ruby/vendor_ruby/bundler/setup.rb:17:in `<top (required)>'
from /usr/lib/ruby/2.1.0/rubygems/core_ext/kernel_require.rb:55:in `require'
from /usr/lib/ruby/2.1.0/rubygems/core_ext/kernel_require.rb:55:in `require'
我的docker-compose.yml文件中的相关位:command: bundle exec rails server
concurrent-ruby最确切地安装在需要的位置。我已经在Docker中运行bundle install
了很多次,并且尝试将gem install concurrent-ruby -v 1.0.5
添加到我的docker-compose命令中,并且安装得很好,然后仍然抱怨找不到宝石。我尝试将bundle install
直接添加到我的docker-compose命令中,但由于涉及docker-compose和git的一些已知问题而失败(我正在使用两个内部gems)。 [编辑:https://github.com/docker/compose/issues/2856#issuecomment-236625662]
一切正常,直到我升级了一些Ruby gem,但我不确定为什么或如何修复它。
我在Docker之外有类似的问题。
我删除了Gemfile.lock
并运行了bundle
。
问题消失了。
您的里程可能有所不同。
我在docker-compose上遇到了同样的错误。显然,它是在运行docker-compose run backend bundle install
后安装了gem,Gemfile.lock文件已正确更新。尽管如此,它将继续为该gem或其他宝石显示此错误。
[在某些情况下,仅通过docker运行捆绑安装是不够的。如此处文档中所指定:https://docs.docker.com/compose/rails/有时在运行捆绑包安装后,您需要重建映像。这解决了我的问题:
docker-compose run backend bundle install
docker-compose build
tl; dr:设置GEM_HOME
= BUNDLE_PATH
由于您使用的是docker,所以我还假设您可能正在更改BUNDLE_PATH
的值,以便可以缓存gems?如果是这样,您还需要将GEM_HOME
变量设置为此值。
我无法确切解释原因。我的理论是,..某物..在应使用GEM_HOME
时错误地使用了BUNDLE_PATH
的值,因此从rails项目的Gemfile
安装的宝石不存在。
除非您重新安装metasploit-framework,否则什么都不会起作用。我已经面对这个问题1周了。我已经亲自尝试过,并且现在可以运行。
$ pkg升级&& pkg安装git && pkg安装curl && pkg安装wget && pkg安装nmap && curl -LOraw.githubusercontent.com/Hax4us/Metasploit_termux/master/metasploit.sh&& chmod 777 metasploit.sh && ./metasploit.sh