Docker Crash Course для занятых DevOps и разработчиков
В мире современной разработки программного обеспечения одним из наиболее востребованных инструментов стал Docker. Это открытая платформа для автоматизации создания, запуска и управления приложениями в контейнерах. Если вы DevOps или разработчик с ограниченным временем, но хотите освоить Docker, этот краткий курс поможет вам быстро научиться работать с этой технологией.
Что такое Docker и почему он нужен?
Docker позволяет упаковывать приложения со всеми их зависимостями в контейнеры, которые легко развертываются на любой системе с поддержкой Docker. Это обеспечивает консистентность окружений от разработки до производства и устраняет проблему но у меня работало.
Установка Docker
Перед началом работы с Docker необходимо его установить. Для большинства операционных систем доступны инструкции на официальном сайте Docker. После установки проверьте версию Docker, выполнив в терминале:
«`bash
docker —version
«`
Основные концепции Docker
1. Контейнеры: Легковесный, изолированный исполнитель для приложений и их зависимостей.
2. Изображения (Images): Замороженные моменты контейнеров, которые используются для создания новых экземпляров контейнеров.
3. Реестры: Хранилища Docker-изображений, такие как Docker Hub.
Создание первого Dockerfile
Dockerfile — это текстовый файл с инструкциями для построения изображения Docker. Начнем с простого примера:
«`dockerfile
Используем базовое изображение
FROM ubuntu:latest
Устанавливаем необходимые пакеты
RUN apt-get update && \
apt-get install -y python3
Копируем файл приложения в контейнер
COPY app.py /app/
Указываем команду, которая будет выполняться по умолчанию
CMD [python3, /app/app.py]
«`
Сборка и запуск изображения
Создайте Docker-изображение с помощью:
«`bash
docker build -t my-python-app .
«`
Запустите контейнер на основе этого изображения:
«`bash
docker run —name python-container my-python-app
«`
Управление контейнерами
Чтобы увидеть список запущенных контейнеров, используйте:
«`bash
docker ps
«`
Для остановки и удаления контейнера выполните:
«`bash
docker stop python-container
docker rm python-container
«`
Работа с Docker Compose
Docker Compose позволяет описывать и запускать многосервисные приложения. Пример `docker-compose.yml` для приложения:
«`yaml
version: ‘3’
services:
web:
image: my-python-app
ports:
— 5000:5000
«`
Запустите приложение с помощью команды:
«`bash
docker-compose up
«`
Заключение
Docker значительно упрощает процесс разработки и развертывания приложений, предоставляя консистентные окружения. Даже с ограниченным временем вы можете освоить основы работы с Docker, используя этот краткий курс. Это откроет новые возможности для автоматизации и улучшения вашего рабочего процесса.