今天用一个简单的例子,介绍下如何使用Docker进行Python部署。
前期准备
-
本地需要有Python环境;
-
一个Linux的服务器并已经装好Docker ;
-
能把代码上传到服务端的工具。
本文的本地环境是Win10+Python3.12,服务器使用Ubuntu的云服务器。
创建Python应用
创建一个新的目录,并在其中创建 main.py
文件(以FastAPI项目为例),内容如下:
创建 requirements.txt 文件
列出应用程序所需的依赖项。
在同一目录下创建一个 requirements.txt 文件,内容如下:
FastAPI项目依赖需要安装的两个第三方模块。
编写 Dockerfile
Dockerfile 是一个包含一系列指令的文本文件,这些指令定义了如何构建 Docker 镜像。
它可以被认为是 Docker 镜像的蓝图,详细描述了镜像应该包含的内容、如何配置、以及如何运行。
dockerfile里的内容可以这样去理解:
-
指定Python的运行环境;
-
把本地的 requirements.txt 和程序代码拷贝进 Docker 镜像;
-
在Docker里面把依赖的第三方模块安装好;
-
使用命令启动/运行应用程序。
构建 Docker 镜像
打开终端,导航到包含上述文件的目录,运行以下命令来构建 Docker 镜像:
如果能使用上面的命令成功build完成,则说明编写的dockerfile是没有大问题的。
到这一步,你的Docker镜像就打好了,接下来就可以部署了..
上传项目文件到服务器
把代码 + requirement.txt + dockerfile上传到服务端:
然后服务器端,启动容器:
访问应用程序
以上操作都完成后,就可以在外网访问你的Python应用程序了!