栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

windows下利用docker的linux内核部署python的flask项目

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

windows下利用docker的linux内核部署python的flask项目

文章目录
  • 1.下载安装docker for windows
  • 2.创建docker镜像
  • 3.启动flask项目

1.下载安装docker for windows

进入docker官网
https://www.docker.com/

点击 Docker Desktop,下载

安装完后根据提示重启

重启后可能会弹出如下提示

进入此页面下载安装WSL2 linux内核
https://docs.microsoft.com/zh-cn/windows/wsl/install-manual#step-4—download-the-linux-kernel-update-package

点击restart或者重新打开 docker desktop 即可

再次进入之后需要为 docker engine 配置镜像源
进入 settings 页面

复制镜像配置

{
  "debug": true,
  "experimental": false,
  "insecure-registries": [],
  "registry-mirrors": [
    "http://hub-mirror.c.163.com",
    "https://docker.mirrors.ustc.edu.cn"
  ]
}

粘贴到这里,点击 apply&restart

docker就安装好了


2.创建docker镜像

创建一个flask项目,在根目录下创建一个文件 Dockerfile
输入如下内容【下面会逐条解释命令的意思】

from python:3.7-slim-buster
workdir /app
copy . .
run pip install -r requirements.txt
cmd ["python", "run.py"]


其中:
from python:3.7-slim-buster 的意思是使用python3.7的开发环境镜像,更多镜像的写法请参考 docker hub https://registry.hub.docker.com/
检索框输入python

点进去后很多版本镜像

workdir /app 的意思是配置 docker 镜像中项目的操作根目录,从这条语句后,针对 docker 镜像的操作根目录都是 /app

copy . . 中,第一个点是当前 Dockerfile 文件的目录位置(就是flask项目根目录位置),第二个点是 docker 镜像中项目的根目录位置(就是刚才配置的 /app)

run pip install -r requirements.txt 执行这条命令安装 flask 的依赖包

cmd [“python”, “run.py”] 执行这条命令启动docker容器中flask项目


Dockerfile 配置好后,执行创建镜像命令

docker build -t my_dwl .

其中:
-t 参数指定镜像名称
结尾那个点告诉 docker 应该在当前目录下寻找 Dockerfile 文件

创建好镜像后,打开 docker desktop 可以看到创建好的镜像

3.启动flask项目

执行命令启动项目

docker run -p 5556:5555 -d my_dwl


其中:
-p 参数将本机的 5556端口 映射到 docker 容器的 5555端口上(注意,项目的启动端口要与 docker 容器的端口一致,如下图)

-d 参数指定运行哪个docker镜像

此时,docker desktop 上就会显示运行在docker容器中的项目了

不出意外的话就可以通过你 项目的ip 和 docker映射的端口 访问了


ps:flask项目只是简单的测试运行,不是生产环境,gunicron+supervisor+nginx+flask+docker的生产环境部署方法写好之后链接会挂在这篇文章下

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/530279.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号