Как стать автором
Обновить

Комментарии 5

dkpl

Используете алиасы в статье - хоть расшифровывайте.

А вообще расписать на 5 экранов 2 файла - шедевр конечно.

dk=docker
dkr='docker run'
dkIb='docker image build'
dke='docker exec'
dkIls='docker image ls'
dkpl='docker pull'

В первую очередь статья выглядит переусложненной, если верить вашему Dockerfile, то это сетап для локальной разработки.

Например непонятно зачем было брать контейнер с passenger и что мешало взять образ ruby:3.1.2 и для тестового запуска использовать puma, ну или passenger в standalone режиме. А так получилось нагромождение, например nginx, который для локальной rails-разработки не нужен.

А еще вы прокидываете SSH ключ в контейнер и экспоузите SSH порт, зачем?! Что бы попасть в контейнер есть команда docker exec. Более того запуск более одного процесса в рамках docker контейнера - это плохая практика, да для локальной разработки "итак сойдет", но лучше не учить людей плохому.

Создается впечатление, что описанный вами опыт в статье плохо систематизирован.

А это и есть "опыт". Только не использования, а что получается, если делать "первый раз".
По существу.
1. Это не для разработки. Разрабатывать в такой конструкции я бы не стал. Песочница для использования дальше, можно так назвать. Основные приемы. Где взять, куда посмотреть, как собрать все в кучу.
2. SSH в этой конфигурации - не нужен вообще, все на локальной машине.
Если не на локальной - может понадобиться, потому что не всегда там, где контейнер разворачивается, есть доступ к какой либо командной строке.
3. Nginx и passenger выбраны по простой причине - это наиболее просто превратить в prod решение.
4. Возможно забыл отметить, здесь вообще нет никаких затронутых вопросов промышленной эксплуатации. Так, песочница, не более того.

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации