如何使用 Docker 部署基于 Flask 的 Web 应用

阅读时长 4 分钟读完

在开发基于 Flask 的 Web 应用时,部署和运行环境的配置往往是一个繁琐且耗时的过程。使用 Docker 技术可以使这个过程变得简单和快捷。本文将详细介绍如何使用 Docker 部署基于 Flask 的 Web 应用,并包含实际的示例代码。

环境准备

在开始之前,我们需要准备以下环境:

  • 安装 Docker 并启动 Docker 服务
  • 安装 Python 和 pip,并设置好相关环境变量

安装 Docker

Docker 是一种先进的虚拟化技术,可以在同一台机器上运行多个应用程序,并且每个应用程序都可以独立运行,并且不会相互干扰。Docker 的安装过程可以参看 Docker 官方文档。

安装 Python 和 pip

Python 是开发 Flask 应用的必备环境。在安装 Python 之前,我们需要安装 Python 的包管理工具 pip。

在 Windows 上,可以从官方网站下载 Python 并安装:

在 Linux 上,可以使用以下命令安装 Python 和 pip:

创建 Flask 应用

在开始部署 Flask 应用之前,我们需要先创建一个简单的 Flask 应用。

安装 Flask

使用以下命令安装 Flask:

编写简单的 Flask 应用

在 Flask 应用的根目录下,创建一个名为 app.py 的文件,代码如下:

-- -------------------- ---- -------
---- ----- ------ -----

--- - ---------------

---------------
--- --------
    ------ ------- -------

-- -------- -- -----------
    ------------------- ---------------

这个应用非常简单,在浏览器访问 http://localhost:5000 即可看到输出 Hello, World!

创建 Dockerfile

在创建 Docker 镜像之前,我们需要编写一个名为 Dockerfile 的文件。此文件包含了 Docker 镜像的构建信息。

在 Flask 应用根目录下新建一个名为 Dockerfile 的文件,内容如下:

-- -------------------- ---- -------
---- ----------------------

--- - ----

------- ----

--- --- ------- -- ----------------

------ ----

--- ---------- ---------

这个文件包含了以下信息:

  • 使用了python:3.7-slim-buster的作为基本镜像。在这里,我们使用了 Python 3.7 系列的 slim-buster 版本。
  • 将应用程序的所有文件添加到镜像的 /app 目录中。
  • 切换到 /app 目录,运行 pip install -r requirements.txt 来安装依赖项。
  • 暴露端口号 5000。
  • 在容器启动时,运行命令 python app.py

构建 Docker 镜像

现在我们可以使用以下命令构建 Docker 镜像:

这个命令的意思是从当前目录(即 Flask 应用的根目录)构建一个名为 flask-docker-image 的 Docker 镜像。

运行 Docker 镜像

在正确构建 Docker 镜像之后,我们可以使用以下命令运行该镜像:

这个命令的意思是将 Docker 容器的 5000 端口映射到主机的 5000 端口,-d 选项表示在后台运行 Docker 容器。

现在,通过在浏览器中访问 http://localhost:5000,即可看到输出 Hello, World!

总结

通过使用 Docker 部署基于 Flask 的 Web 应用,我们可以将环境配置的复杂性和部署的繁琐过程变得简单和快捷。在本文中,我们具体介绍了如何创建简单的 Flask 应用、编写 Dockerfile、构建 Docker 镜像和运行 Docker 镜像,希望能对读者有所帮助。

来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/645ca0d9968c7c53b0f0e686

纠错
反馈