当前位置: 首页 > news >正文

封装python的docker镜像

基于alpine的python镜像封装。

docker pull python:3.10-alpine

准备

  • requirements.txt内容:
fastapi
uvicorn
  • server.py内容
from fastapi import FastAPI
import uvicorn
app = FastAPI()
@app.get("/")
def read_root():return {"Hello": "world"}
if __name__ == '__main__':uvicorn.run("server:app",host="0.0.0.0",port=8000)
  • Dockerfile内容
FROM python:3.10-alpine
LABEL author="heruos"
WORKDIR /app
ADD . /app
EXPOSE 8000
RUN python3 -m pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple
CMD python3 /app/server.py

打包

build方式

# 使用主机网络,避免容器内访问不到外网的奇怪问题
docker build --network=host -t mypy:1.0 .

commit方式

docker run -it --rm --network=host python:3.10-alpine sh
python3 -m pip install fastapi uvicorn -i https://pypi.tuna.tsinghua.edu.cn/simple
# docker cp将文件放到容器内
# 依据修改后的容器封装成新的镜像
docker commit -a "heruos" -m "install fastapi" 容器id myfastapi:1.0

compose方式

在docker-compose文件中添加封装配置,封装后直接启动。

  • docker-compose.yaml内容
version: "3"
services:fastapi:build:context: .dockerfile: Dockerfile# 使用主机网络network: host# 指定的镜像就是封装后的镜像文件名image: fastapi:1.0container_name: fa_apphostname: fa_appports:- 8000:8000
  • 构建并启动
docker-compose up -d

测试

# 查看镜像和容器
docker images
docker ps -a
# curl测试
curl http://127.0.0.1:8000
http://www.dtcms.com/a/249011.html

相关文章:

  • 图纸管理教程-4 物料关联产品多,如何管理发布、变更?
  • Ubuntu VMware虚拟机卡在/dev/sda1
  • 编译器基础概念
  • 【MPC】模型预测控制笔记 (2):约束MPC
  • HTML+CSS实现的动态登录界面
  • 【技术追踪】用于 CBCT 到 CT 合成的纹理保持扩散模型(MIA-2025)
  • 车载以太网-switch
  • python精讲之文件操作
  • 晶振常见封装工艺及其特点
  • 《第五章-心法进阶》 C++修炼生涯笔记(基础篇)指针与结构体⭐⭐⭐⭐⭐
  • Python脚本开发入门:从基础到进阶技巧
  • 印度客机坠毁致波音美股盘前直线下跌​
  • python中的zip函数
  • Java集合 - ArrayList底层源码解析
  • C++标准库大全(STL)
  • jupyter内核崩溃
  • 第四章 指令系统
  • 强化学习 PPO
  • 红帽认证工程师(RHCE):掌握Linux自动化的关键
  • Python Day50 学习(仍为日志Day19的内容复习)
  • 全链路实时感知:网络专线端到端监控运维
  • 1万美元iO bounty破解之旅
  • 《Deep Residual Learning for Image Recognition》(深度残差学习在图像识别中的应用)
  • Active Directory Certificate Services(AD CS)攻击基础
  • 泰国跨境电商系统开发:多语言多币种 + 国际物流对接,中泰贸易桥梁
  • 影刀学院课程地图导航汇总
  • 数据库中的索引作用:索引分类、索引失效、聚集索引和非聚集索引
  • 构建高效CMDB管理体系:企业数字化转型的基石
  • tp3.1临时连接指定数据库,切片分类in查询,带过滤需要的数据
  • 工业自动化发展:工业相机在机器视觉领域的应用趋势