gpt4 book ai didi

ruby - Docker Ruby Bundler未安装

转载 作者:行者123 更新时间:2023-12-02 19:50:05 26 4
gpt4 key购买 nike

我的Dockerfile如下所示:

FROM ruby:2.5-alpine

RUN apk update add --no-cache build-base nodejs postgresql-dev

RUN mkdir /my-app
WORKDIR /my-app

COPY Gemfile Gemfile.lock ./
RUN bundle install --binstubs

COPY . .

CMD puma -C config/puma.rb

现在,当我尝试创建图像时,出现以下错误:
You must use Bundler 2 or greater with this lockfile.
The command '/bin/sh -c bundle install --binstubs' returned a non-zero code: 20

使用的 bundle 程序版本Gemfile.lock是2.1.4。
我确实尝试向Dockerfile添加以下行:
RUN gem update --system
RUN gem install bundler -v 2.1.4

在这种情况下,我得到以下错误:
ERROR:  Could not find a valid gem 'bundler' (= 2.1.4), here is why:
Unable to download data from https://rubygems.org/ - no such name (https://rubygems.org/specs.4.8.gz)

我正在使用Ubuntu 18.04系统。有人遇到过这个问题吗?任何帮助表示赞赏。

先感谢您。

最佳答案

我无法回答所有问题,因此需要创建一个答案。我意识到这不是您的解决方案。

如果我使用此设置,它将运行而不会出现错误。您能否看一下它与您的设置和测试有何不同? (也请将此添加到问题中)

dockerfile

FROM ruby:2.5-alpine

RUN apk update add --no-cache build-base nodejs postgresql-dev

RUN mkdir /my-app
WORKDIR /my-app

RUN gem update --system && gem install bundler && bundle --version
# installs bundler 2.1.4

COPY Gemfile Gemfile.lock ./
RUN bundle install

COPY . .

CMD /bin/sh

Gemfile
ruby '2.5.8'
source 'https://rubygems.org'
gem 'flay'

Gemfile.lock
GEM
remote: https://rubygems.org/
specs:
erubis (2.7.0)
flay (2.12.0)
erubis (~> 2.7.0)
path_expander (~> 1.0)
ruby_parser (~> 3.0)
sexp_processor (~> 4.0)
path_expander (1.0.3)
ruby_parser (3.13.1)
sexp_processor (~> 4.9)
sexp_processor (4.12.0)

PLATFORMS
ruby

DEPENDENCIES
flay

RUBY VERSION
ruby 2.5.8p224

BUNDLED WITH
2.1.4

构建并开始于:
docker build . --no-cache -t foobar
docker run --it foobar

关于ruby - Docker Ruby Bundler未安装,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61231047/

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