Как использовать докер для создания пользовательских контейнеров для ваших приложений

Недавно я работал над веб-скрапером, который загружает файлы с предоставленных пользователем URL-адресов, обрабатывает их и, наконец, загружает на FTP-сервер. Когда я начал проект, я изучал несколько языков программирования для создания проекта, и в итоге я выбрал Python.

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

Я хочу сосредоточиться на создании контейнера Docker из группы и не буду обсуждать, что такое Docker, как его установить и настроить вашу среду.

Первый шаг — создать файл с именем «Dockerfile» в корневом каталоге приложения и открыть его в своем любимом редакторе (я предпочитаю коду). Структура вашего Dockerfile должна выглядеть следующим образом:

FROM ubuntu:20.04 #Установка ubuntu 20.04 из Docker Hub

RUN apt-получить обновление

ВЫПОЛНИТЬ apt-получить установку python3 -y

ВЫПОЛНИТЬ apt-получить установку python3-pip -y

ВЫПОЛНИТЬ apt-получить установку vim -y

WORKDIR /home/{your-username}/apps/{your-app-name} # Объявление рабочего каталога в нашем контейнере

КОПИРОВАТЬ требования.txt . # Скопируйте файл requirements.txt в $WORKDIR

ЗАПУСК pip3 install -r требования.txt

КОПИРОВАТЬ . . #Копировать исходные файлы в $WORKDIR

Во-первых, мы загружаем и устанавливаем Ubuntu 20.04 из Docker Hub в качестве базового образа для нашего контейнера. Во-вторых, мы запускаем несколько apt-команд для обновления нашего списка пакетов и установки python3, python3-pip и vim в наш контейнер. После этого мы указываем рабочий каталог в нашем контейнере (вам нужно заменить {your-username} и {your-app-name} на ваше фактическое имя пользователя и имя приложения, которое вы хотите использовать). Следующим шагом будет копирование нашего файла requirements.txt в рабочий каталог (не забудьте точку в конце) и установка всех необходимых пакетов для приложения. И, наконец, мы копируем все исходные файлы из нашего контейнера с помощью команды COPY. ..

Мы практически подошли к концу сборки нашего контейнера докеров. Как только мы будем довольны настройками Dockerfiles, мы должны создать наш фактический контейнер. Для этого нам нужно выполнить следующие команды (не забудьте изменить {container-name} на фактическое имя контейнера):

docker build — pull — rm -f «Dockerfile» -t {имя-контейнера}: последний «.»

Если вы хотите запустить контейнер в интерактивном режиме, вы можете использовать следующую команду:

docker run — это {имя-контейнера}

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

На этом мы завершаем эту статью. Я надеюсь, что это было информативно для вас, и я хотел бы поблагодарить вас за чтение!