首页 > 编程语言 >docker方式部署 uvicorn python项目

docker方式部署 uvicorn python项目

时间:2023-08-18 19:11:17浏览次数:40  
标签:RUN python pypi uvicorn -- https edu docker main

uvicorn 项目接触比较少,写dockerfile编译后,启动一直报错重启,尤其是最后写 ENTRYPOINT 启动命令,改了很多次,特地记录下。

以下为正确的dockerfile文件

FROM python:latest
RUN pip install -i https://pypi.tuna.tsinghua.edu.cn/simple fastapi[all]
RUN pip install -i https://pypi.tuna.tsinghua.edu.cn/simple docxtpl
RUN pip install -i https://pypi.tuna.tsinghua.edu.cn/simple pycrypto
RUN mkdir -p /report_tpl
WORKDIR /report_tpl
ADD . /report_tpl
ENTRYPOINT [ "uvicorn", "main:app", "--host", "0.0.0.0", "--port", "3333"]

注:

1.RUN pip install -i 要替换成国内的源,要不然下载插件速度很慢,,例如阿里源,豆瓣源等,这里用清华源

2.最后的--host,--port 一定要和参数分开写,要不然会报错无效参数--host,--port 

3.main:app要指向main.py所在目录,这里设置了workdir,所以和main.py在同级目录,如果不同级要写成 ${dir}.main:app

 

 

参考文档:

https://www.5axxw.com/questions/content/zp0i2p

https://www.5axxw.com/questions/content/om23jf

https://mirrors.tuna.tsinghua.edu.cn/help/pypi/

标签:RUN,python,pypi,uvicorn,--,https,edu,docker,main
From: https://www.cnblogs.com/allay/p/17641400.html

相关文章

  • 基于Python的招聘网站爬虫及可视化的实现-计算机毕业设计源码+LW文档
    开发语言:Python框架:flaskPython版本:python3.7.7数据库:mysql5.7(一定要5.7版本)数据库工具:Navicat11开发软件:PyCharm浏览器:谷歌浏览器DROPTABLEIFEXISTSa6woc_zhaopinxinxi;/*!40101SET@saved_cs_client=@@character_set_client/;/!40101SETcharacter_set_cli......
  • python pip国内镜像源使用
    清华:https://pypi.tuna.tsinghua.edu.cn/simple阿里云:http://mirrors.aliyun.com/pypi/simple/中国科技大学 https://pypi.mirrors.ustc.edu.cn/simple/华中理工大学:http://pypi.hustunique.com/山东理工大学:http://pypi.sdutlinux.org/豆瓣:http://pypi.douban.com/simple/......
  • kafka——命令备份——docker 启动
    dockerrun-d\--namezookeeper\-p2181:2181\-eZOOKEEPER_CLIENT_PORT=2181\confluentinc/cp-zookeeperdockerrun-d\--namekafka\-p9092:9092\-eKAFKA_ADVERTISED_LISTENERS=PLAINTEXT://192.168.1.100:9092\......
  • Python修改图片Exif属性
    Exif属性包括EXIF_TAG_ARTIST(0x013B):图像的作者信息。EXIF_TAG_COPYRIGHT(0x8298):版权信息。EXIF_TAG_DATETIME(0x0132):原始图像的创建日期和时间。EXIF_TAG_IMAGE_DESCRIPTION(0x010E):图像的文字描述。EXIF_TAG_MAKE(0x010F):制造商/品牌信息。EXIF_TAG_MODEL(0......
  • 【Python-每日技巧】python在linux中通过进程名称停止指定进程
    在CentOS下,你可以使用psutil库来杀死进程。以下是一个示例代码:importpsutil#设置要杀死的进程的名称process_name="your_process_name"#查找指定名称的进程并杀死forprocinpsutil.process_iter(['pid','name']):ifproc.info['name']==process_name:......
  • 总结python 元组和列表的区别
    python的基本类型中有元组和列表这么俩个,但是这哥俩却比较难于区分,今天就来用简单的实例说明两者的不同。列表:1.使用中括号([])包裹,元素值和个数可变实例:aaa=['sitename','www','pythontab','com']元组:1.使用中括号(())包裹,不可以被更改(尽管他们的内容可以)bbb=['sitename','www','py......
  • Python的参数
    Python的参数Python的参数包含三种,默认参数、可变参数、关键字参数默认参数默认参数允许你在调用函数时省略参数或者更新参数,在省略参数时,为你提供一个默认值示例1:defeat(food="baozi"):return"Eat,"+food+"."print(eat())#省略参数时,使用默认值Eat,baozi.......
  • 在 docker 中设置容器自动启动---九五小庞
    1、使用dockerrun命令运行时增加--restart=always参数即可2、使用docker-compose命令运行时在yml文件中,需要自启动的service下增加restart:always项目即可3、已运行的容器修改其自启动策略执行命令:dockerupdate--restart=always容器名或容器IDdockercon......
  • 在 docker 中设置容器自动启动--九五小庞
    1、使用dockerrun命令运行时增加--restart=always参数即可2、使用docker-compose命令运行时在yml文件中,需要自启动的service下增加restart:always项目即可3、已运行的容器修改其自启动策略执行命令:dockerupdate--restart=always容器名或容器IDdockercon......
  • Docker碎碎念
    docker和虚拟机的区别虚拟机(VM)是通过在物理硬件上运行一个完整的操作系统来实现的。每个虚拟机都有自己的内核、设备驱动程序和用户空间,它们是相互独立且完全隔离的。虚拟机可以在不同的物理服务器之间迁移,因为它们是以整个操作系统作为单元进行迁移的。而容器则是在单个操作......