这是我的第313篇原创文章。
一、引言
Docker 对于程序员来说,其实和Git差不多,基本上属于一个必备工具。如果你想使用这个工具,你就必须安装这个应用工具,至于在不同操作系统上安装Docker的方式网上有很多教程,这里不做赘述。
- 安装docker
- 若想在本地windows环境运行,就得在windows中安装docker,分为桌面版和内核版
- 若想在远程服务器Linux环境运行镜像,就得在Linux中安装docker,分为桌面版和内核版
我在E盘有一个名为docker-test的python项目,docker-test就是这个项目的根文件夹:
docker-test文件下有一个app包,包下面有一个python脚本hello.py,接下来简要说明如何将这个项目使用docker进行部署,运行这个项目(这里就是运行这个脚本)。
这个脚本实现的功能是一个请求百度官网并打印出请求内容。
二、使用Docker部署应用(Windows环境)
2.1 生成requirement.txt
项目应用程序中需要依赖一些Python库,为了方便在docker上进行安装,所以将需要的库整合到requirement.txt中。
在终端中进入到项目目录下,执行下面的命令,生成requirement.txt
pip freeze > requirements.txt
或者安装pipreqs,pip install pipreqs,执行pipreqs .,在docker-test文件下后会生成一个requirements.txt文件
2.2 创建Dockerfile
在docker-test文件夹下新建一个Dockerfile文件,与app文件夹同级,然后编辑Dockerfile文件:
FROM python:3.9.6 # 设置基于的python基础镜像
ADD . E:/docker-test # 将代码程序添加到E:/docker-test文件夹
WORKDIR E:/docker-test # 设置E:/docker-test文件夹是docker工作目录
RUN pip install -r requirements.txt # 安装程序依赖包
CMD ["python", "app/hello.py"] # 执行python项目主程序
2.3 创建镜像
如果要部署到其他服务器,可以先将项目(docker-test文件夹)上传到服务器,然后创建镜像:
docker build -t imagename Dockerfilepath
# docker build -t demo_f:v0 .
默认情况下,Docker镜像存储在Docker引擎的默认存储位置。在Windows上,它通常位于C:\ProgramData\Docker\windowsfilter目录下。在这个目录中,你可以找到以哈希值命名的文件夹,每个文件夹对应一个镜像。在Windows上,如果你使用的是Docker Desktop(Docker for Windows),默认情况下,镜像存储在WSL 2的虚拟机文件系统中。
命令运行之后本地就会生成一个镜像,在docker desktop里面就可以看到:
内核版需要命令查看:
docker images
接下来可以将上传到服务器,在服务器运行镜像即可;也可以将镜像上传到docker hub,进行拉取镜像,修改镜像等操作
2.4 启动容器
启动容器就是运行镜像,也就是运行项目的主程序
桌面版本直接点击运行:
内核版需要敲命令行:
docker run demo_f:v0
本文详细讲解了python程序部署到docker,一步一截图,超级详细,不会的小伙伴,自觉动手练习!!!!
作者简介:
读研期间发表6篇SCI数据挖掘相关论文,现在某研究院从事数据算法相关科研工作,结合自身科研实践经历不定期分享关于Python、机器学习、深度学习、人工智能系列基础知识与应用案例。致力于只做原创,以最简单的方式理解和学习,关注我一起交流成长。需要数据集和源码的小伙伴可以关注底部公众号添加作者微信。