Я надеюсь, что кто-то сможет помочь мне понять, чего мне здесь не хватает.Я пытаюсь создать файлы в контейнере, используя docker-compose exec
, однако они никогда не отображаются в подключенном томе, и я понятия не имею, почему.Подробности следующие:
docker-compose.yml
version: '3'
services:
web:
build: .
command: bin/rails s -b 0.0.0.0
ports:
- "3000:3000"
volumes:
- .:/usr/scr/app
redis:
image: redis
Dockerfile
FROM ruby:2.5
RUN apt-get update -yqq && apt-get install -yqq --no-install-recommends \
nodejs
COPY Gemfile* /usr/src/app/
WORKDIR /usr/src/app
RUN bundle install
COPY . /usr/src/app
CMD ["bin/rails", "s", "-b", "0.0.0.0"]
Теперь я сначала вызову контейнеры с docker-compose up -d
, за которым следуетвторая команда, в которой я попытался бы запустить команду rails, чтобы сгенерировать серию файлов, например docker-compose exec web bin/rails g controller test
, вывод этой команды показывает, что файлы генерируются просто отлично, однако они не отображаются на моем ноутбукенесмотря на монтирование / синхронизацию локального каталога в файле docker-compose.yml
.
Интересно, что я могу выполнить следующую команду и получить правильный результат с помощью docker run -it -rm -v ${PWD}:/usr/src/app bin/rails g controller test
Я потратил слишком много времени, пытаясь понять это, поэтому я хотел спросить некоторых людей, гораздо более знающих, чем я.Что мне здесь не хватает?