windows下利用docker的linux内核部署python的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
输入如下内容【下面会逐条解释命令的意思】

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

## gunicorn
# from python:3.7-slim-buster
# workdir /app
# copy . .
# run pip install -r requirements.txt
# run pip install gunicorn
# cmd gunicorn -w 1 -b 0.0.0.0:5555 run:app

在这里插入图片描述


其中:
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的生产环境部署方法写好之后链接会挂在这篇文章下

  • 9
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 7
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

什么都干的派森

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值