• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

ruby - 运行 Docker 时尚未 check out git 源

[复制链接]
菜鸟教程小白 发表于 2022-8-3 10:13:36 | 显示全部楼层 |阅读模式 打印 上一主题 下一主题

我目前在尝试使用 GitHub 中的 gem 时遇到错误。我的 Gemfile 中有以下内容:

# 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

当我跑 bundle install来自 Dockerfile它适用于以下消息:
...
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 master@3e4c486)
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 无关。



Best Answer-推荐答案


事实证明我能够找到问题所在。问题与我用于构建 Docker 镜像的 Gemfile 有关。

我没有在本地运行 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 保持更新.

关于ruby - 运行 Docker 时尚未 check out git 源,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39455225/

回复

使用道具 举报

懒得打字嘛,点击右侧快捷回复 【右侧内容,后台自定义】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关注0

粉丝2

帖子830918

发布主题
阅读排行 更多
广告位

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap