Вы должны использовать Bundler 2 или выше с этим файлом блокировки. При запуске docker-compose локально - PullRequest
0 голосов
/ 29 апреля 2019

Новичок в докере, я пытался использовать его с моим проектом rails, но не смог его запустить.

Пробовал менять версии ruby ​​и искать в Интернете, но большинство вопросов касалось развертыванияприложение к героку, что не в моем случае.

Файл Docker:

FROM ruby:2.4.1
RUN mkdir /zssn
WORKDIR /zssn
COPY Gemfile /zssn/Gemfile
COPY Gemfile.lock /zssn/Gemfile.lock
RUN gem install bundler
RUN bundle --version
RUN bundle install
COPY . /zssn

CMD ["rails", "server"]

docker-compose-yml

version: '3'
services:
  web:
    build: .
    command: rails s -p 3000 -b '0.0.0.0'
    volumes:
      - .:/zssn
    ports:
      - "3000:3000"

сборка докера.--no-cache, кажется, работает нормально при запуске команды bundler для его установки.

 ---> Running in d4650608f428
Successfully installed bundler-2.0.1

Есть идеи?

Ответы [ 3 ]

2 голосов
/ 30 апреля 2019

Добавление этой строки перед установкой пакета RUN в Dockerfile помогло мне.

RUN gem install bundler -v 2.0.1

Оставив это здесь для дальнейшего использования!

0 голосов
/ 30 апреля 2019

в вашем Gemfile.lock, внизу, вы можете найти версию пакета:

BUNDLED WITH
2.0.1

Пожалуйста, убедитесь, что вы поставили его с верной версией

0 голосов
/ 30 апреля 2019

Я думаю, вам нужно либо обновить образ ruby, поставляемый с Bundler 2 (например, FROM ruby:2.6.3), либо заменить ваш Gemfile.lock на версию, которую вы хотите использовать.Или, по крайней мере, это то, что сработало для меня.

Не удалось настроить переменные окружения в соответствии с рекомендациями Bundler .

Эта проблема github заставляет меня думать, что это ожидаемое поведение, но я могу ошибаться.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...