python写的服务,用docker制作镜像并且打包

步骤1 简单写一个python服务脚本app.py,通过http访问一个端口,收到helloworld

from flask import Flask, request

app = Flask(name)

@app.route('/', methods='GET') # 确保包括'GET'方法

def hello_world():

return 'Hello, World!'

if name == 'main':

app.run(host='0.0.0.0', port=5002)

步骤2 生成requirements.txt文件

pip freeze->requirements.txt

步骤3 准备Dockerfile文件

使用官方Python 3.12镜像作为基础镜像

FROM python:3.12

设置工作目录

WORKDIR /app

将当前目录内容复制到容器内的/app目录

COPY . /app

安装依赖,假设你有一个requirements.txt文件

RUN pip3 install -i https://pypi.tuna.tsinghua.edu.cn/simple --upgrade pip

RUN pip3 install -i https://pypi.tuna.tsinghua.edu.cn/simple -r requirements.txt

运行时暴露端口

EXPOSE 5002

定义环境变量

ENV NAME World

运行应用

CMD "python", "app.py"

步骤4 build镜像

在目录下cmd,输入docker build -t mydockertest:1.0 .(注意后面的空格和点)

步骤5 打包镜像

打开docker desktop 可以看到镜像正常运行

然后打开文件目录

cmd输入 docker save -o my-image.tar mydockertest

可以看到镜像成功生成在当前文件夹里

相关推荐
源图客7 小时前
【AI向量数据库】Weaviate介绍与部署
运维·docker·容器
一勺菠萝丶9 小时前
宝塔 Docker 安装 Ubuntu 及启动失败解决流程
ubuntu·docker·eureka
码云骑士11 小时前
28-Docker部署Django(下)-docker-compose编排与静态文件处理
docker·容器·django
至乐活着12 小时前
Docker Compose多服务编排实战:从零搭建Node.js+MySQL+Redis全栈应用
docker·微服务·devops·容器编排·compose
木雷坞12 小时前
Firecrawl Docker Compose 自托管排查:镜像、Redis、队列和 Playwright
redis·docker·容器·firecrawl
whyfail12 小时前
Colima:把 Docker Desktop 从 Mac 上“瘦身”的那把刀
macos·docker·容器
大佐不会说日语~14 小时前
在 Windows 本地用 Docker 部署向量模型(bge-m3)
windows·docker·容器·llm·ollama
xsc-xyc14 小时前
CasaOS + Docker 挂载外接硬盘部署 Jellyfin 私人影院
运维·docker·容器
码云骑士14 小时前
27-Docker部署Django(上)-从2GB到180MB的镜像瘦身实战
docker·容器·django
日取其半万世不竭14 小时前
PostgreSQL 跑在 Docker 里怎么备份?恢复成功才算备份成功
数据库·docker·postgresql