一、准备工作

  1、先确保项目可以正常运行

  2、使用pip freeze导出第三方库

  3、在项目根目录新建pip.conf文件,写入一下内容

   

[global]
index-url=http://pypi.douban.com/simple # 我之前用的阿里云的,但是镜像打包的时候提示代理问题,建议使用豆瓣的 [install]
trusted-host=pypi.douban.com

二、编写Dockerfile文件,生成镜像

FROM python
MAINTAINER tester
ADD ./ /opt/rms-rcs
WORKDIR /opt/rms-rcs
COPY pip.conf /root/.pip/pip.conf #复制到目标服务器,这样pip安装的速度会比较快
RUN /usr/local/bin/python -m pip install --upgrade pip && \
pip3 install -r requirements.txt
CMD ["gunicorn", "-c", "gunicorn.py", "main:app"]
EXPOSE 8000

  docker build -t test:v1.0.0 .    # 注意最后的那个“.”,说明是当前目录下

三、运行镜像及调试

  docker run -it --name test -p 8080:8080 test:v1.0.0

  一开始不建议-d直接后台运行,这样报错的话不利于调试,确保没有问题后再进行后台

  

 

docker+gunicorn+fastapi部署的更多相关文章

  1. FastAPI(62)- FastAPI 部署在 Docker

    Docker 学习 https://www.cnblogs.com/poloyy/p/15257059.html 项目结构 . ├── app │   ├── __init__.py │ └── ma ...

  2. 记基于docker+gunicorn部署sanic项目遇到的很多很多坑

    前言: 最近有个项目需要上线,是python中sanic网络异步框架写的,并且要求使用docker+nginx来部署项目实现负载均衡,于是乎百度了sanic项目部署,基本上都是基于docker+gun ...

  3. flask +gevent+nginx+Gunicorn+supervisor部署flask应用

    上篇   可以完美部署flask ,但是视乎在结合gevent+apscheduler 实现异步非阻塞后台和定时任务的时候视乎不是那么完美.请教了前辈,决定使用flask+gevent+nginx+g ...

  4. 将你的前端应用打包成docker镜像并部署到服务器?仅需一个脚本搞定

    1.前言 前段时间,自己搞了个阿里云的服务器.想自己在上面折腾,但是不想因为自己瞎折腾而污染了现有的环境.毕竟,现在的阿里云已经没有免费的快照服务了.要想还原的话,最简单的办法就是重新装系统.而一旦重 ...

  5. 基于Jenkins,docker实现自动化部署(持续交互)

      前言 随着业务的增长,需求也开始增多,每个需求的大小,开发周期,发布时间都不一致.基于微服务的系统架构,功能的叠加,对应的服务的数量也在增加,大小功能的快速迭代,更加要求部署的快速化,智能化.因此 ...

  6. Docker Compose 一键部署LNMP

    Docker Compose 一键部署LNMP 目录结构 [root@localhost ~]# tree compose_lnmp/ compose_lnmp/ ├── docker-compose ...

  7. Docker Compose 一键部署Nginx代理Tomcat集群

    Docker Compose 一键部署Nginx代理Tomcat集群 目录结构 [root@localhost ~]# tree compose_nginx_tomcat/ compose_nginx ...

  8. Docker Compose 一键部署多节点爬虫程序

    Docker Compose 一键部署多节点爬虫程序 目录结构 [root@localhost ~]# tree compose_crawler/ compose_crawler/ ├── cento ...

  9. Docker Overlay 应用部署

    Docker Overlay 部署条件 要想使用Docker原生Overlay网络,需要满足以下任意条件: 1.Docker运行在Swarm模式 2.使用键值存储的Docker主机集群 本次部署使用键 ...

  10. Docker Macvlan 应用部署

    Docker Macvlan 应用部署 MacVLAN有两种桥接模式 Bridge模式:不创建子接口的情况下直接去桥接物理接口.直接桥接到与宿主级的同网段. VLAN Bridge模式:创建子接口去桥 ...

随机推荐

  1. 线程基础知识11-CAS+自旋锁

    1.CAS是什么(CompareAndSet) CAS(Compare and swap)比较和替换是设计并发算法时用到的一种技术.简单来说,比较和替换是使用一个期望值和一个变量的当前值进行比较,如果 ...

  2. .net core 阿里云接口之获取临时访问凭证

    假设您是一个移动App开发者,希望使用阿里云OSS服务来保存App的终端用户数据,并且要保证每个App用户之间的数据隔离.此时,您可以使用STS授权用户直接访问OSS. 使用STS授权用户直接访问OS ...

  3. 真·生产力「GitHub 热点速览」

    这些工具真的能极大提高生产力,节约你的时间来自(摸)我(鱼)增(划)值(水).先别提 style2paints,你给它随意画个草图,就能给你一个能交付给甲方爸爸的成品插画.如果提升 30%-40% 传 ...

  4. 【雅礼联考DAY02】Magic

    #include<cstdio> #include<iostream> #include<cstring> #include<algorithm> us ...

  5. 如何在Ubuntu 20.04上安装和保护phpMyAdmin

    转载csdn:cukw6666 https://blog.csdn.net/cukw6666/article/details/107985170

  6. keep-alive详解

    1.什么是keep-alive? keep-alive 是 Vue 的内置组件,当它包裹动态组件时,会缓存不活动的组件实例,而不是销毁它们.keep-alive 是一个抽象组件:它自身不会渲染成一个 ...

  7. Word 表格对文字、图文进行排版

    在以前,Web 前端工程师利用 <table /> 元素对网页布局进行排版,但是如今却不推荐此元素排版了,而是改用 <div /> 元素和 CSS 弹性布局(或网格布局)对网页 ...

  8. PostGIS之Geometry

    1. 概述 PostGIS 是PostgreSQL数据库一个空间数据库扩展,它添加了对地理对象的支持,允许在 SQL 中运行空间查询 PostGIS官网:About PostGIS | PostGIS ...

  9. unity 音频曲线

    jp--------------- https://techblog.kayac.com/dynamic-waveform-generation-without-audio-clip https:// ...

  10. 使用AJAX绑定点击事件将接口值返回渲染到指定位置

    AJAX 是局部的刷新或者叫做无刷新技术 首先是js部分,这里注意不紧要引入express模块,还需要把cors模块也引入 在下面添加了判断,用来判断所取得的随机值是否在0.5以上 接下来是HTML部 ...