Я прочитал статьи про то зачем нужен докер, как на нём разворачивать простейшие приложения, но всё ещё не понимаю как я могу его использовать в своём проекте.

Мой стэк — Node.js/Express/TypeScript, MongoDB, RabbitMQ, nginx. Я бы вручную установил ОС, весь стэк, конфигурацию, и общую папку (чтобы не копировать файлы). При необходимости эмулировать продакшн — создал бы ещё один контейнер. Если бы у меня была macOS, то я бы использовал VirtualBox.

Но я до сих пор не понял что мне делать в Docker. Конкретно:

  • Мне нужно все этапы установки, которые я выполнял при ручном создании контейнера, перенести в Dockerfile/docker-compose?
  • Как в докере устанавливается стэк (nginx, MySQL, etc.), чтобы образы были иммутабельными? Я в некоторых Dockerfile видел apt-install — разве это уже не означает, что образ не иммутабелен? Ведь изменится версия библиотеки в репах — изменится и в твоём образе, разве нет?
  • Зачем нужен DockerHub, если можно выбрать ОС и самому установить нужный софт?
  • Я вижу как в очередном Dockerfile пишут FROM php:alpine-666 и чуть ниже RUN apt-install .... Это значит, что используемый образ из DockerHub — Ubuntu-based? В DockerHub все образы Ubuntu-based?







 ,






URL записи