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

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

相关推荐
元直数字电路验证8 分钟前
云计算实验笔记(四):容器编排(Container Orchestration)
运维·笔记·docker·云计算
kukubuzai28 分钟前
Docker Note
linux·运维·docker
惜年_night32 分钟前
Docker部署05-GitLab的CI-CD发布
ci/cd·docker·gitlab
杨某不才1 小时前
内网环境下,使用Docker安装Elasticsearch分词器插件
elasticsearch·docker·jenkins
开开心心就好2 小时前
无弹窗不更新的PC本地播放工具
运维·科技·macos·docker·计算机外设·ocr·powerpoint
小王师傅662 小时前
深入解析:Docker在Mac上的运行本质与Linux进程管理机制
linux·macos·docker
wu8587734572 小时前
OpenResty 源站被扫描的排查与防御实战:Cloudflare + DOCKER-USER + Fail2Ban 最全方案解析
docker·容器·openresty
杨某不才2 小时前
内网离线方式Docker安装Elasticsearch
elasticsearch·docker·jenkins
微步_ym3 小时前
Docker:在Mac的docker.desktop中安装mongo
macos·docker·容器
tianyuanwo3 小时前
深入解析 Docker Registry 源配置:原理、登录、查看、拉取、更新、删除与最佳实践
docker·registry