Въведение

Docker революционизира начина, по който софтуерните приложения се разработват, тестват и внедряват. Той осигурява лека, преносима и изолирана среда, наречена контейнер, която капсулира зависимостите и конфигурациите, необходими за изпълнение на приложение. В тази статия ще разгледаме основите на използването на Docker, със специален фокус върху примерите на Python, за да помогнем на начинаещите да започнат с този мощен инструмент.

Предпоставки: Преди да се потопите в Docker, се препоръчва да имате основни познания за Python и използването на интерфейса на командния ред (CLI).

Инсталация:

За да започнете, трябва да инсталирате Docker на вашата машина. Docker предоставя лесни за следване инструкции за инсталиране на различни операционни системи на своя уебсайт (https://www.docker.com/).

Докер концепции:

  1. Изображения: Docker изображенията са шаблони само за четене, които определят средата и зависимостите, необходими за стартиране на приложение.
  2. Контейнери: Контейнерите са екземпляри на Docker изображения, които могат да се създават, стартират, спират и изтриват. Всеки контейнер е изолиран и работи като независим процес.

Първи стъпки с Docker:

Нека започнем, като изпълним прост скрипт на Python в Docker контейнер. Създайте нова директория за вашия проект и отидете до нея с помощта на командния ред.

Стъпка 1: Създайте Python скрипт Създайте файл с име „hello.py“ и добавете следния код:

print("Hello, Docker!")

Стъпка 2: След това създайте файл с име „Dockerfile“ (без разширение на файла) в същата директория. Dockerfile дефинира стъпките за изграждане на Docker изображение. Добавете следния код към Dockerfile:

# Use an official Python runtime as the base image
FROM python:3.9

# Set the working directory inside the container
WORKDIR /app

# Copy the current directory contents into the container at /app
COPY . /app

# Install the dependencies
RUN pip install --no-cache-dir -r requirements.txt

# Run the Python script
CMD ["python", "hello.py"]

Стъпка 3: Създайте изображението на Docker За да създадете изображението на Docker, изпълнете следната команда в директорията на проекта:

docker build -t my-python-app

Стъпка 4: Стартирайте Docker контейнера Сега нека стартираме Docker контейнера въз основа на изображението, което току-що създадохме:

docker run my-python-app

Трябва да видите резултата: „Здравей, Докер!“

Честито! Успешно сте изпълнили скрипт на Python в контейнер на Docker.

Допълнителни съвети и трикове:

Монтажни обеми:

Ако искате да редактирате кода си, без да изграждате повторно Docker изображението всеки път, можете да монтирате локална директория като том в контейнера. Това ви позволява да правите промени в кода и да виждате резултатите веднага.

  • docker run -v /path/to/local/directory:/app my-python-app

Използване на Docker Compose:

Docker Compose е инструмент, който опростява процеса на дефиниране и изпълнение на многоконтейнерни Docker приложения. Тя ви позволява да дефинирате услугите, мрежите и томовете на вашето приложение в YAML файл.

Ето примерен docker-compose.yml файл за стартиране на нашето приложение Python:

version: '3'
services:
  myapp:
    build:
      context: .
      dockerfile: Dockerfile
    volumes:
      - .:/app

За да стартирате приложението с помощта на Docker Compose, изпълнете следната команда:

  • docker-compose up

Заключение:

Docker предоставя ефективен и възпроизводим начин за пакетиране, разпространение и стартиране на софтуерни приложения. В тази статия разгледахме основите на използването на Docker за разработка на Python, включително някои основни примери. Научихме как да създадем Dockerfile, да създадем Docker изображение и да стартираме Docker контейнер. Също така проучихме допълнителни функции като монтиране на томове и използване на Docker Compose за многоконтейнерни приложения.

Docker отваря свят от възможности за разработчиците на Python, позволявайки им да създават преносими и последователни среди, да опростяват работните процеси на внедряване и да си сътрудничат по-ефективно с членовете на екипа. Помага за премахване на проблема „работи на моята машина“, като предоставя стандартизирана среда за стартиране на приложения.

Кодиране на ниво нагоре

Благодарим ви, че сте част от нашата общност! Преди да тръгнеш:

🚀👉 Присъединете се към колектива за таланти Level Up и намерете невероятна работа