[Уровень няни] Полный процесс развертывания проекта Python (веб-страницы Flask) в Docker.
[Уровень няни] Полный процесс развертывания проекта Python (веб-страницы Flask) в Docker.

Предпосылка: я считаю, что читатели, прочитавшие эту статью, должны были изучить установку Docker и основы его использования. Если нет, вы можете обратиться к моей предыдущей статье для подробного изучения!

1. Инсталляционная версия: 2300+ слов! Установите Docker на разные системы! Достаточно прочитать эту статью

2. Версия использования: можете ли вы изучить Docker? Возможно, вы захотите прочитать эту статью

Изучив Docker, сегодня мы объясним, как развернуть нашу программу на Python в Docker! (На рисунке ниже показано, как установить докер. Будет твит, объясняющий развертывание программ на Python. Сегодня это было реализовано)

01

Веб-проект Flask

Автор этой статьи, брат Чен, использует предыдущий простой проект, чтобы продемонстрировать(Flask в сочетании с ECharts позволяет добиться супердетализированных эффектов онлайн-визуализации!),Это веб-страница, написанная в flask,Его функция: онлайн-визуализация веб-страниц. Веб-интерфейс выглядит следующим образом:

В этой статье этот проект используется в качестве примера для развертывания в Docker. Для удобства всем всем также предоставляется полный исходный код этой веб-страницы.

Адрес исходного кода: https://gitee.com/lyc96/flash-visualization

Структура каталогов веб-программы:

Знакомство с программой веб-страницы завершено. Теперь приступим к развертыванию~.

02

Развертывание в докере

1. Создайте файл require.txt.

Веб-программа Flask должна использовать некоторые библиотеки Python. Чтобы облегчить установку в Docker, необходимые библиотеки интегрированы в файл require.txt.

Перейдите в каталог проекта в терминале и выполните следующий каталог, чтобы создать файл require.txt.

Язык кода:javascript
копировать
pip freeze > requirements.txt

Сгенерированный файл require.txt выглядит следующим образом:

Здесь содержится множество библиотек, которые flask не нужно использовать. Давайте удалим те, которые нам не нужны~.

Поскольку я использую только эти две библиотеки в своей веб-программе Flask, осталось только две.

2. Создайте Docker-файл.

Веб-программа Flask помещается в папку Chenge (сгенерированный ранее require.txt также находится в папке Chenge), а папка Chenge помещается в папку 0714.

Затем создайте новый файл Dockerfile в папке 0714 (того же уровня, что и папка Chenge).

Что такое Dockerfile? Dockerfile — это текстовый файл, содержащий инструкции одна за другой. С помощью Dockerfile мы можем создать нужный нам образ.

Редактировать файл DockerFile

Язык кода:javascript
копировать
#Устанавливаем образ среды Python FROM python:3.6
#Добавьте код в папку Chenge, код создавать не нужно (он создается самостоятельно при запуске докера) ADD ./Chenge  /code
# Установите папку кода в рабочий каталог WORKDIR. /code
# Установите соответствующую библиотеку Python RUN. pip install -r requirements.txt
CMD ["python", "/code/main.py"]

Команды в Dockerfile следующие: 1. Установите версию Python 2. каталог веб-программы Flask 3. рабочий каталог докера 4. Установите библиотеки, необходимые для выполнения веб-программ. 5. Запустите программу Python (основную программу программы веб-страницы).

3. Создайте изображение chenge_image.

Напоминание: загрузите папку 0714 на сервер (если на удаленном сервере установлен докер)

Перейдите в папку 0714 в терминале и сначала проверьте текущее изображение.

Язык кода:javascript
копировать
docker images

Вы можете видеть, что на данный момент существует два образа Docker. Теперь мы приступаем к созданию образа веб-программы chenge_image.

Язык кода:javascript
копировать
docker build -t chenge_image .

Процесс создания следующий:

Вы можете видеть, что подтягивается среда python3.6, устанавливается библиотека flask и т.д.

Взгляните еще раз на все изображения докера.

Вы можете видеть, что наше изображение chenge_image уже существует.

4. Запустите контейнер

Язык кода:javascript
копировать
docker run -it -p 5000:5000 --name=chenge chenge_image

-it: представляет собой интерактивный терминальный контейнер, контейнер, который завершается сразу после того, как он не запускается. -p — это сопоставление портов, что означает сопоставление порта 5000 докера с портом 5000 локального компьютера. --name Дать контейнеру имя, здесь оно называется chenge

Эффект запуска:

Интерфейс стартапа ничем не отличается от нашего локального стартапа!

напоминать: 1. 172.17.0.2 здесь — это IP-адрес контейнера докера (на самом деле это IP-адрес интрасети нашей локальной машины/сервера) 2. В программе-флаке рекомендуется указать хост 0.0.0.0, иначе он может быть недоступен.

Настройки хоста в веб-программе Flask

5. Посетите веб-страницу.

Посетите ссылку: Мой локальный IP — 192.168.31.196, поэтому ссылка для доступа: http://192.168.31.196:5000/pie-nest Если это удаленный сервер, используйте общедоступный IP-адрес.

Вы можете видеть, что доступ к веб-странице прошел успешно и стиль страницы в порядке. Таким образом, наша веб-программа успешно развертывает Docker.

03

краткое содержание

В этой статье подробно объясняется развертывание программы Python. в докере,Скриншоты шаг за шагом,Супер подробный,Друзья, которые не знают, как,Почувствуйте себя практической практикой! ! ! !

Хорошие рекомендации книг

1. Введение в анализ данных Python

Введение: Будучи вводной книгой по анализу данных, эта книга основана на языке Python и знакомит со всем процессом анализа данных. В этой книге рассматриваются сбор данных (т. е. разработка программ веб-сканеров), очистка и обработка предварительных данных, использование алгоритмов машинного обучения для анализа моделирования и использование визуальных методов для отображения данных и результатов.

(Отсканируйте QR-код для получения подробной информации)

2. Красота визуализации данных Python.

Введение: В этой книге в основном рассказывается, как использовать matplotlib, Seaborn,plotnine, Basemap и другие пакеты Python для рисования профессиональных диаграмм. В этой книге сначала представлены базовые знания программирования на языке Python, а также методы манипулирования данными NumPy и Pandas, затем сравниваются и знакомятся с графическим синтаксисом matplotlib, Seaborn иplotnine; В этой книге систематически представлены методы использования matplotlib, Seaborn иplotnine для построения общих двумерных и трехмерных диаграмм, таких как тип сравнения категорий, тип отношений данных, тип временных рядов, общий частичный тип и географический пространственный тип. Кроме того, в этой книге также представлены характеристики и различия между коммерческими и академическими диаграммами, а также способы использования matplotlib для рисования анимации интерактивных страниц в формате HTML.

(Отсканируйте QR-код для получения подробной информации)

3. Легко обрабатывать данные Excel с помощью Python

Введение: Эта книга представляет собой руководство по обработке данных Python для офисных работников, не связанных с ИТ. Поскольку эта книга не предназначена для профессиональных программистов, ее описание легко понять. Чтобы дать читателю возможность получить более глубокое представление об основах знаний Python при обучении, в книге принят готовый к использованию метод написания: при введении пунктов знаний они своевременно перемежаются с практическими примерами. Применение кейса объясняется в форме «предложение проблемы, которую необходимо решить → поиск идей для решения проблемы → показ сравнительного эффекта до и после завершения → предоставление кода для решения проблемы → анализ кода шаг за шагом», поэтому что читатели смогут не только изучить основы Python, но и уточнить идеи по решению проблем и овладеть навыками написания кода.

(Отсканируйте QR-код для получения подробной информации)

Язык кода:javascript
копировать
Если вам понравилась эта статья, добро пожаловать Смотрим丨Оставить сообщение丨Поделиться в Moments Три подряд

 Рекомендуемые горячие статьи  
Бестселлер «Модель высокопроизводительной команды» уже здесь!
Волшебный инструмент, который вам нужен для «ловли рыбы» на рабочем месте, уже здесь!
Создайте систему знаний блокчейна с «большей скоростью, большей эффективностью»
Подробное объяснение классических алгоритмов обучения с подкреплением
boy illustration
Углубленный анализ переполнения памяти CUDA: OutOfMemoryError: CUDA не хватает памяти. Попыталась выделить 3,21 Ги Б (GPU 0; всего 8,00 Ги Б).
boy illustration
[Решено] ошибка установки conda. Среда решения: не удалось выполнить первоначальное зависание. Повторная попытка с помощью файла (графическое руководство).
boy illustration
Прочитайте нейросетевую модель Трансформера в одной статье
boy illustration
.ART Теплые зимние предложения уже открыты
boy illustration
Сравнительная таблица описания кодов ошибок Amap
boy illustration
Уведомление о последних правилах Points Mall в декабре 2022 года.
boy illustration
Даже новички могут быстро приступить к работе с легким сервером приложений.
boy illustration
Взгляд на RSAC 2024|Защита конфиденциальности в эпоху больших моделей
boy illustration
Вы используете ИИ каждый день и до сих пор не знаете, как ИИ дает обратную связь? Одна статья для понимания реализации в коде Python общих функций потерь генеративных моделей + анализ принципов расчета.
boy illustration
Используйте (внутренний) почтовый ящик для образовательных учреждений, чтобы использовать Microsoft Family Bucket (1T дискового пространства на одном диске и версию Office 365 для образовательных учреждений)
boy illustration
Руководство по началу работы с оперативным проектом (7) Практическое сочетание оперативного письма — оперативного письма на основе интеллектуальной системы вопросов и ответов службы поддержки клиентов
boy illustration
[docker] Версия сервера «Чтение 3» — создайте свою собственную программу чтения веб-текста
boy illustration
Обзор Cloud-init и этапы создания в рамках PVE
boy illustration
Корпоративные пользователи используют пакет регистрационных ресурсов для регистрации ICP для веб-сайта и активации оплаты WeChat H5 (с кодом платежного узла версии API V3)
boy illustration
Подробное объяснение таких показателей производительности с высоким уровнем параллелизма, как QPS, TPS, RT и пропускная способность.
boy illustration
Удачи в конкурсе Python Essay Challenge, станьте первым, кто испытает новую функцию сообщества [Запускать блоки кода онлайн] и выиграйте множество изысканных подарков!
boy illustration
[Техническая посадка травы] Кровавая рвота и отделка позволяют вам необычным образом ощипывать гусиные перья! Не распространяйте информацию! ! !
boy illustration
[Официальное ограниченное по времени мероприятие] Сейчас ноябрь, напишите и получите приз
boy illustration
Прочтите это в одной статье: Учебник для няни по созданию сервера Huanshou Parlu на базе CVM-сервера.
boy illustration
Cloud Native | Что такое CRD (настраиваемые определения ресурсов) в K8s?
boy illustration
Как использовать Cloudflare CDN для настройки узла (CF самостоятельно выбирает IP) Гонконг, Китай/Азия узел/сводка и рекомендации внутреннего высокоскоростного IP-сегмента
boy illustration
Дополнительные правила вознаграждения амбассадоров акции в марте 2023 г.
boy illustration
Можно ли открыть частный сервер Phantom Beast Palu одним щелчком мыши? Супер простой урок для начинающих! (Прилагается метод обновления сервера)
boy illustration
[Играйте с Phantom Beast Palu] Обновите игровой сервер Phantom Beast Pallu одним щелчком мыши
boy illustration
Maotouhu делится: последний доступный внутри страны адрес склада исходного образа Docker 2024 года (обновлено 1 декабря)
boy illustration
Кодирование Base64 в MultipartFile
boy illustration
5 точек расширения SpringBoot, супер практично!
boy illustration
Глубокое понимание сопоставления индексов Elasticsearch.
boy illustration
15 рекомендуемых платформ разработки с нулевым кодом корпоративного уровня. Всегда найдется та, которая вам понравится.
boy illustration
Аннотация EasyExcel позволяет экспортировать с сохранением двух десятичных знаков.