2016-09-12 7 views
1

GitHubからGemを使用しようとすると、現在エラーが発生しています。私は私のGemfileに次き:Dockerを実行しているときにgitソースがチェックアウトされていない

# Gemfile 
source 'https://rubygems.org' 
ruby '2.3.1' 

gem 'sinatra' 
gem 'rack' 
gem 'puma' 

group :development do 
    gem 'byebug' 
    gem 'rack-test' 
    gem 'rerun', github: 'alexch/rerun', branch: 'master' 
end 

私はDockerfileからbundle installを実行すると、それはのようなメッセージで動作します:

:私は私が手にコンテナを起動するために行くとき、しかし

... 
Installing sinatra 1.4.6 
Installing listen 3.1.5 (was 3.0.6) 
Using rerun 0.11.0 from git://github.com/alexch/rerun.git (at [email protected]) 
Bundle complete! 6 Gemfile dependencies, 14 gems now installed. 
... 

The git source git://github.com/alexch/rerun.git is not yet checked out. Please run `bundle install` before trying to start your application 

私は似たような問題を見ましたが、Dockerとは関係ありません。

答えて

6

私は問題を見つけることができました。この問題は私のGemfileがDockerイメージを構築するのに関連していました。

bundle installコマンドをローカルで実行していないため、Gemfile.lockが更新されませんでした。私は、コマンドを実行すると、以下が私のGemfile.lockに追加されました:

@@ -1,14 +1,20 @@ 
+GIT 
+ remote: git://github.com/alexch/rerun.git 
+ revision: 3e4c486304be406cb86180ef70ec24e9ae055ce4 
+ branch: master 
+ specs: 
+ rerun (0.11.0) 
+  listen (~> 3.0) 

はそれは私が必要なすべてのだったが判明します。更新されたファイルを取得したら、イメージを再構築し、期待通りに動作していたすべてのコンテナをbundle exec rerunで実行しました。キャッチはキャッシング/バージョンロックのためにGemfile.lockを使用していましたが、Gemfileで更新しないようにしていませんでした。

+0

あなた自身の答えを受け入れる必要があります! – thomasd

+0

できるだけ早く待っています... 2日と私は受け入れます:-) – krsyoung

関連する問題