Создание среды AWS Boto3 на Python с Docker Compose

Создание среды AWS Boto3 на Python с Docker ComposeАх, Docker — этот загадочный зверь из мира технологий! Если вам кажется, что это какая-то новая диета или вид йоги, то спешу разочаровать — это всего лишь инструмент, который делает жизнь программиста чуть менее похожей на борьбу с драконом.

Представьте себе: раньше сборка и развёртывание приложений напоминали попытку научить кота играть на пианино — вроде возможно, но скорее всего вы получите царапины и пару разбитых клавиш. А с Docker всё стало как в сказке: собрал контейнеры, запустил их где угодно — и радуйся жизни.

Вот возьмём, к примеру, Boto3 — библиотеку Python для работы с AWS (Amazon Web Services). Без Docker она может превратиться в настоящий квест: «Пойди туда, не знаю куда, принеси то, не знаю что».

Но с Docker? Всё просто! Создаёшь контейнеры для разработки и продакшена — и можешь быть уверен, что код работает одинаково везде.

Это как если бы у вас был волшебный чемоданчик: положил туда все свои вещи и в любой точке мира достал их ровно такими же свежими и опрятными.

Конечно, чтобы этот волшебный чемоданчик заработал, нужно сначала познакомиться с Docker Hub — своеобразным супермаркетом образов. Там можно взять официальные образы Centos, Ubuntu или даже Alpine (тот самый микродистрибутив Linux размером с детскую книжку) и собрать из них свой идеальный набор инструментов. Это примерно как пойти в магазин за продуктами и вместо того чтобы покупать готовую пиццу заказать ингредиенты для собственной шедевральной выпечки.

Установка Docker Desktop на ваш компьютер — это как приглашение на вечеринку: просто скачайте приложение для Mac, Windows или Linux, залогиньтесь под своим именем пользователя (не забудьте пароль!) — и вот вы уже внутри тусовки.

Там можно запускать и останавливать контейнеры одним кликом мыши. Представьте себе кнопку «Старт» на утюге — только тут она запускает виртуальные машины!

А теперь немного о магии создания образов. В моём случае я завёл папку boto3_env — звучит почти как имя супергероя.

Внутри неё три подкаталога: development (для экспериментов), productionA и productionB (для серьёзных боёв). В development я положил Python-скрипты для AWS Boto3 — они там отдыхают до своего часа славы.

Затем написал requirements.txt — список всех нужных зависимостей Python. Это как список покупок перед походом в супермаркет: «Купи молоко», «Купи яйца», а тут «Установи boto3». Потом создаём Dockerfile – своего рода рецепт приготовления пирога из кода и библиотек.

В нём указываем базовый образ Python Alpine – легкий как пушинка дистрибутив весом всего 5 мегабайт. Для сравнения: мой последний отчёт по работе весит больше!

В Dockerfile прописываем команды RUN для обновления системы и установки curl, bash, git… Тут главное не забыть про && между командами – иначе процесс будет выглядеть так же забавно, как если бы вы пытались одновременно почистить зубы и завязать шнурки.

Не забываем установить AWS CLI – инструмент для общения с облаком Amazon через терминал. Это примерно как иметь личного переводчика между вами и вашим сервером.

А теперь внимание! Когда копируем requirements.txt внутрь контейнера командой COPY .

/home/app , точка означает текущий каталог – представьте себе маленького почтальона доставляющего письма прямо в нужный офис.

This entry was posted in Linux и серверы. Bookmark the permalink.