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

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

相关推荐
谢亮_vipxieliang5 小时前
一套 Compose 搭起完整开发环境:MySQL + Redis + Nginx
redis·mysql·nginx·docker
江湖有缘5 小时前
Docker实战 | 使用Docker部署Bibliotheca阅读习惯管理工具
java·docker·容器
万联WANFLOW5 小时前
Docker Hub 镜像拉取慢、timeout 的排查方法
运维·docker·云原生·容器·eureka
天衍四九-6 小时前
Docker Compose企业实战系列(一):LNMP环境一键部署(Nginx\+MySQL\+PHP)
mysql·nginx·docker
大貔貅喝啤酒6 小时前
Gitea+Jenkins+Docker 搭建 Node 项目 CI/CD 自动部署完整教程
ci/cd·docker·jenkins·js·gitea
AlfredZhao6 小时前
用 Docker 简化部署与版本升级:一份可复用的实践
docker
bloglin9999916 小时前
vmware部署centos7启动docker容器后无法访问服务
运维·docker·容器
AutumnWind042021 小时前
【Docker Compose 快速入门】
运维·docker·容器
ai小陈1 天前
GPU服务器租用容器实战:Docker数据卷持久化与安全重建
服务器·人工智能·安全·docker·ai·gpu算力
如果'\'真能转义说1 天前
Docker Desktop | 本地化挂载 Postgresql
docker·postgresql·容器