极简Docker部署python项目

前言(默认已安装docker)

使用docker部署python项目的优势:

1、环境一致性:彻底解决“依赖地狱”和环境差异问题

2、极简的依赖管理和隔离性

3、简化部署流程和快速扩展

4、便于持续集成和持续部署

这相对于直接打包成exe,闪光点就包含这几个部分。

一、docker镜像制作

初始docker环境就是极简的带基础库的环境,例如python3.8,是可以直接拿官方docker镜像使用的,所以docker镜像的制作可以分为两种,一种是拿初始镜像做安装拓展,另一种是直接使用Dockerfile全部构建。

1.1、初始镜像拓展

为什么这么做呢?其一是网络问题,若使用Dockerfile构建,国内网络网速普遍较慢。其二是若安装库过多,导致安装步骤复杂,时间相对慢。

(1)、首先使用Dockerfile构建简单镜像(以python3.8为例)

# 第一阶段:选择基础镜像(Python 3.8 官方镜像)
FROM python:3.8-slim

# 第二阶段:设置工作目录(容器内的路径)
WORKDIR /app

# 第三阶段:复制依赖文件并安装
COPY requirements.txt .
RUN pip install --no-cache-dir -r requirements.txt

# 第四阶段:复制应用代码到容器
COPY . .

# 第五阶段:声明容器运行时监听的端口(Flask 默认 5000)
EXPOSE 5000

# 第六阶段:启动命令
CMD ["python", "app.py"]
docker build -t control-app:1.0 .

(2)、运行镜像

docker run -d -p 5000:5000--name container control-app

(3)、安装所需库

pip install -r requirements.txt

(4)、修改保存容器

docker commit control control-app:modified

(5)、提交容器为镜像

docker commit control control-image

1.2、Dockerfile全部构建

这里的话,直接把所有的安装库放入Dockerfile文件里安装,也就是requirements.txt,需要注意的是很大可能导致安装失败,因为docker镜像是最基础的,为了简化体积,一些编译工具都没有安装。

二、导出镜像为 .tar文件

docker save -o control.tar control-image

将镜像导出为tar文件,在其他机器使用。

三、在其他机器导入镜像并启动

docker load -i control.tar #加载镜像

docker run -it -p 5000:5000--name control control-image /bin/bash #启动镜像

结语

注:本博客仅当学习使用,谢谢!!!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

相识已是上上签

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值