#ruby-on-rails #docker #webpack #webpack-dev-server
Вопрос:
Это мое docker-compose.yml
приложение для моих рельсов. Как вы можете видеть из command:
, я помещаю rails s
его в фоновый режим, а затем запускаю webpack-dev-server
, чтобы мои ресурсы быстро компилировались во время разработки.
version: '3' services: app: depends_on: - 'db' build: context: . dockerfile: ./docker/app/Dockerfile command: bash -c "rm -f tmp/pids/server.pid amp;amp; bundle exec rails s -p 3000 -b '0.0.0.0' amp; ./bin/webpack-dev-server" ports: - '3000:3000' env_file: .env # For byebug to work stdin_open: true tty: true
Это отлично работало для меня, пока я не захочу отлаживать с помощью byebug. Когда я docker attach
, это просто не дает мне консоли для взаимодействия. И поэтому мне приходится комментировать эту amp; ./bin/webpack-dev-server
часть каждый раз, когда я отлаживаю.
Итак, как вы обычно запускаете webpack-dev-сервер при разработке в docker?
Комментарии:
1. Я обычно использую
rbenv
среду, не связанную с Докером, для повседневной разработки, что позволяет мне устанавливать не глобальные Ruby и изолированные наборы драгоценных камней без привлечения Докера. Затем позже я используюdocker build amp;amp; docker push
его для создания образа и, в конечном итоге, запущу его в Kubernetes, но это не моя основная настройка разработки.2. Спасибо, что поделился @DavidMaze, но у меня есть ряд сервисов, таких как sidekiq, redis, cron и другие. Их трудно настраивать снова и снова. Так что теперь я предпочитаю, чтобы мой разработчик rails был докеризован.