В этой статье рассматривается как начать работу с Docker и Flask через практическую и практичность (подход) Python. Цель состоит в том, чтобы предоставить первый внешний вид и понимание некоторых из самых хищных инструментов для разработчиков в современном мире.
Докер
Docker – это открытая платформа для разработки, доставки и эксплуатации приложений. Docker позволяет отделить ваши приложения из своей инфраструктуры, чтобы вы могли быстро доставить программное обеспечение. С Docker вы можете управлять своей инфраструктурой такими же способами, которыми вы управляете своими приложениями. Воспользовавшись методологиями докера для быстрого доставки, тестирования и развертывания кода быстро, вы можете значительно уменьшить задержку между кодом записи и запустить его в производстве.
Контейнер докера
По сути, контейнер относится к устройству, в котором находится весь код и зависимости приложения в стандартном формате, который позволяет ему быстро и надежно проходить через вычислительные среды. Следовательно, докерный контейнер легкий, автономный, исполняемый контейнер, который содержит все компоненты, необходимые для запуска приложения, такого как библиотеки, код и время выполнения.
Установка докера
Рекомендуемый метод установки является путем настройки репозиториев докера и установки из них; Это не только просто установить, но также обеспечивает быструю модернимость. Следовательно, мы установим с помощью подхода репозитория в Ubuntu 20,04 LTS.
Настройте репозиторий
- Во-первых, обновите
APT
И установите необходимые пакеты нам репозиторий через HTTPS:
$ sudo apt-get update $ sudo apt-get install \ > apt-transport-https \ > ca-certificates \ > curl \ > gnupg \ > lsb-release
- Добавить официальный ключ Docker GPG:
$ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
- Настройте стабильный репозиторий и добавьте ночную или тестируемую (или оба) репозиторий:
$ echo \ "deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu \ $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
Установите Docker Engine
- Запустите обновление
APT
И установите последнюю версию Docker Engine и Containerd:
$ sudo apt-get update $ sudo apt-get install docker-ce docker-ce-cli containerd.io
- Подтвердите, правильно ли установлен двигатель Docker, используя
Привет-мир
:
$ sudo docker run hello-world
Вы можете посетить официальный Docker Docs Страница Для просмотра процедур установки для других операционных систем
Колбы
Это простая и легкая веб-каркас Python, которая предлагает полезные инструменты для разработки веб-приложений Python. Flask является супер полезным для создания микровидсов, вы можете использовать любое количество его встроенных расширений для проектирования и развертывания микросервисов при высокой скорости.
Настройка нашей среды
Этот проект потребует:
- Python 3.6+ и PIP3
- Виртуальная среда – Венский
- Создать каталог проекта
- Создать
венчание
Установите необходимые пакеты, использующие PIP E.g. Колбы
Создайте каталог для приложения и перейдите в каталог:
$ mkdir demoapp $ cd demoapp/
- Создайте виртуальную среду, используя
Венв
:
$ python3 -m venv venv $ ls venv
- Активируйте виртуальную среду:
$ source venv/bin/activate
Префикс (Венв)
является признаком того, что виртуальная среда активна.
- Установите флабу с помощью
PIP3
:
$ pip3 install flask
Демо-флянтное приложение
Построить приложение Python,
Это простое приложение Python, которое использует запросы GET и POST. Это создает форму, где пользователь (говорит, что студент) будет предложено ввести их имя и область интереса. Пользовательские входы являются отформатированными и отображаются при нажатии кнопки «Отправить».
- Создать
app.py
и код с использованием IDE по вашему выбору. В этом случае мы используем VS код:
$ touch app.py
- Вот код для приложения:
# import Flask and request from flask import Flask, app, request # develop the app app = Flask(__name__) # both GET and POST requests @app.route("/form-example", methods=['GET', 'POST']) def form_example(): # the POST request if request.method == 'POST': username = request.form.get('username') interest = request.form.get('interest') return '''''' if __name__ == '__main__': # we'll run the app in debug mode on port 3000 app.run(debug=True, port=3000, host="0.0.0.0")The student's name is: {}
The field of interest is: {}
'''.format(username, interest) # the GET request return '''
- Генерировать
требования .txt
Файл с использованиемзаморозить
команда
$ pip freeze > requirements.txt
Создайте изображение контейнера приложения
Для того, чтобы построить приложение, вам нужно использовать Dockerfile
Отказ А Dockerfile
это просто текстовый скрипт инструкций, который используется для создания изображения контейнера.
- Создать файл с именем
Dockerfile
в том же каталоге, что иapp.py
:
$ touch Dockerfile
- Содержимое докерафила:
FROM python:3.6 COPY . /src COPY ./requirements.txt /src/requirements.txt WORKDIR src EXPOSE 3000:3000 RUN pip3 install -r requirements.txt CMD [ "python", "app.py" ]
- Создайте изображение контейнера, используя
Docker Build
команда:
$ sudo docker build -t demoapp .
Запуск приложения
- Начните контейнер, используя
Docker Run
команда
$ sudo docker run -dp 3000:3000 demoapp
- Используйте свой браузер для доступа
http://172.17.0.2:3000/form-example
Отказ Вы должны увидеть приложение!
Результаты
Первая страница является формой с Имя пользователя и Интерес Полевые записи и A Отправить кнопка:
После ввода имени, сфера процентов, нажмите Отправить
И вуаля !!
Оригинал: “https://dev.to/james_kinga/getting-started-with-docker-flask-44i”