Работа с контейнерами в Ruby
НАВИГАЦИЯ ПО СТРАНИЦЕ
Docker — это открытая платформа, которая облегчает разработку, доставку и выполнение приложений в контейнерах. Контейнеры – это легковесные, автономные и переносимые окружения, упакованные со всем необходимым для запуска приложения.
Установка Docker
Для начала работы с Docker установите Docker Engine на свой компьютер. Вы можете найти инструкции для вашей операционной системы на официальном сайте Docker.
Создание Docker-контейнера для Ruby-приложения
Dockerfile:
Создайте файл с именем Dockerfile в корневой папке вашего проекта. В этом файле определите инструкции для сборки образа Docker.
# Используем базовый образ с Ruby FROM ruby:latest # Устанавливаем зависимости RUN apt-get update && apt-get install -y \ build-essential \ nodejs # Устанавливаем гемы COPY Gemfile Gemfile.lock ./ RUN gem install bundler && bundle install --jobs 20 --retry 5 # Копируем код приложения в контейнер COPY . . # Указываем порт, на котором будет работать приложение EXPOSE 3000 # Команда для запуска приложения CMD ["rails", "server", "-b", "0.0.0.0"]
Сборка Docker-образа:
Откройте терминал в папке с Dockerfile и выполните команду для сборки образа.
docker build -t my-ruby-app .
Запуск контейнера:
После успешной сборки образа запустите контейнер.
docker run -p 3000:3000 my-ruby-app
Ваше Ruby-приложение теперь работает в контейнере Docker и доступно по адресу http://localhost:3000.
Работа с Docker Compose
Docker Compose — инструмент для определения и запуска многоконтейнерных Docker-приложений. В файле docker-compose.yml определите настройки для вашего приложения.
version: '3'
services:
web:
build: .
ports:
- "3000:3000"
Для запуска приложения с использованием Docker Compose выполните следующую команду:
docker-compose up
Docker и контейнеризация предоставляют мощные инструменты для упаковки, распространения и выполнения приложений в изолированных средах. Они упрощают развертывание и обеспечивают консистентность окружения между разработкой и продакшеном.