fastapi -html docker部署


前言

fastapi html的docker 部署


https://blog.csdn.net/weixin_33028765/article/details/112150517

一、fastapi的docker部署

1.生成包

第一步生成项目所需要安装的包,
pycahrm终端运行:
pip freeze > requirements.txt

在这里插入图片描述
一般而言这种方式会多很多
pytz @ file:///tmp/build/80754af9/pytz_1612215392582/work
这种形式的包,所以运行
pip list --format=freeze > requirements.txt
然后删除一些项目中没有用到的包,尽可能让要安装的包少一点。

2.将文件放入形式如下

在这里插入图片描述

requirements.tex 放入app目录下 和main同级

3.编写dockerfile文件

和app同级新建一个Dockerfile(其实就是pycharm中的file)写入以下信息

FROM python:3.7
COPY app/requirements.txt /app/requirements.txt
RUN pip3 install -r /app/requirements.txt   -i https://pypi.doubanio.com/simple/
COPY ./app /app
EXPOSE 80
CMD ["uvicorn","app.main:app","--host","0.0.0.0","--port","80"]

第一 python:3.7 这个是 docker 生成镜像的版本,(使用到fastapi的依赖(Depends),python版本需要3.7以上)
第二 COPY app/requirements.txt /app/requirements.txt 其实就是将app目录下的requirements.txt 赋值到 docker镜像的目录app下(docker本身有个app目录)。
第三 RUN pip3 install -r /app/requirements.txt -i https://pypi.doubanio.com/simple/ 安装依赖包,这里的 /app/requirements.txt 指的是docker镜像的目录,而不是本地的目录
第四 COPY ./app /app 使用./app 因为dockerfile文件和app文件同级,所以./app 将app的全部文件复制到docker镜像的app中
第四 EXPOSE 80 开放80端口
第五 CMD [“uvicorn”,“app.main:app”,“–host”,“0.0.0.0”,“–port”,“80”] 这个是运行代码的关键一步,app.main:app 指的是在docker镜像上fastapi主应用的位置,

在pycharm终端运行:

docker build -t app .     #创建镜像,app是镜像名,自己定义(如果是同一个程序,最好镜像名一样,因为docker每次创建不同名镜像的时候都会安装requirements文件),终端路径要对(上面的emotion路径下)
docker run -d --name emothion -p 8000:80 app   #运行镜像,并生成容器,-d后台,emothion 容器名也是自定义,-p 8000:80 端口映射将8000映射到80(相当于我使用8000的端口可以访问到80端口的镜像), app指的是镜像名

二、html docker部署

1.文件目录

在这里插入图片描述

2.dockfile文件的写入

在static中常见Dockerfile文件,写入

FROM nginx:1.15.2-alpine
COPY . /usr/share/nginx/html
EXPOSE 80
CMD ["nginx", "-g", "daemon off;"]

然后终端进入到static目录下

docker build -t html_test.     
docker run -d --name html-p 80:80 html_test

运行完成之后,在浏览器输入:
localhost/home.html 就可以进入

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要使用Docker部署chatgpt-next-web,可以按照以下步骤进行操作: 1. 首先,确保你已经安装了DockerDocker Compose。你可以参考相关教程来安装它们\[2\]。 2. 创建一个docker-compose.yml文件,该文件用于定义Docker容器的配置。你可以参考示例文件来创建你自己的docker-compose.yml文件\[2\]。 3. 在docker-compose.yml文件中,指定要使用的chatgpt-next-web镜像。你可以使用命令`docker pull yidadaa/chatgpt-next-web:v2.6`来拉取该镜像\[3\]。 4. 运行Docker容器。在命令行中,进入到包含docker-compose.yml文件的目录,并运行命令`docker-compose up -d`来启动容器。 5. 等待一段时间,直到容器成功启动。你可以使用命令`docker ps`来查看正在运行的容器。 现在,chatgpt-next-web已经成功部署Docker容器中了。你可以通过访问相应的URL来使用它。具体的URL可以在docker-compose.yml文件中找到。 请注意,这只是一个简单的示例,你可能需要根据你的具体需求进行适当的配置和调整。 #### 引用[.reference_title] - *1* *3* [小米万兆路由器里的 Docker 安装 chatgpt-next-web,打造自己的专属ChatGPT](https://blog.csdn.net/engchina/article/details/130957896)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down28v1,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [docker部署chat-web,实现自己的ChatGPT](https://blog.csdn.net/wd520521/article/details/129798861)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down28v1,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值