Python Academy
49.5K subscribers
1.08K photos
2 videos
374 links
Python Academy — один канал вместо тысячи учебников

Чат канала: @python_academy_chat

Сотрудничество: @zubar89

Канал включён в перечень РКН: https://rkn.link/TVu
加入频道
Использование Docker вместе с Python

Docker - это платформа для разработки, доставки и запуска приложений в контейнерах. Контейнеры позволяют упаковать ваше приложение со всем его окружением и зависимостями в один компактный исполняемый пакет. Это обеспечивает его быстрый запуск и согласованную работу в любой среде.

Зачем его использовать?
- Упрощение настройки среды: Docker избавляет от фразы "у меня работает, а у тебя нет". Все необходимые зависимости, библиотеки и окружение можно упаковать в контейнер, который будет работать одинаково на любой машине.

- Быстрая доставка и развертывание: С Docker вы можете легко и быстро развернуть своё приложение в любой среде, будь то облачная платформа или локальный сервер.

- Изоляция приложений: Каждое приложение работает в своем контейнере, не влияя на работу других приложений и системы в целом.

#python #docker
Управление Docker контейнерами с помощью docker-py

docker-py – это официальная библиотека Python для Docker, предоставляющая API для взаимодействия с Docker Daemon. С её помощью можно автоматизировать процессы создания, запуска, остановки и удаления контейнеров, работы с образами, сетями и томами Docker.

import docker

# Создание клиента
client = docker.from_env()

# Запуск контейнера
container = client.containers.run("ubuntu:latest", "echo Hello, docker-py!", detach=True)

# Получение логов контейнера
print(container.logs().decode())

# Остановка и удаление контейнера
container.stop()
container.remove()

В данном примере мы создаем клиента Docker, используя переменные окружения текущей сессии. Затем мы запускаем контейнер из образа ubuntu:latest, выполняем в нем команду echo, выводим логи работы контейнера и в конце останавливаем и удаляем контейнер.

Управление образами с помощью docker-py:
# Получение списка всех образов
images = client.images.list()

# Вывод информации о каждом образе
for image in images:
print(f'ID: {image.id}, Теги: {image.tags}')


Для дальнейшего изучения и ознакомления с более продвинутыми возможностями рекомендуется обратиться к официальной документации.

#python #docker #dockerpy