将Python项目(Flask)打包成Docker镜像,部署到微软云---Azure

这篇具有很好参考价值的文章主要介绍了将Python项目(Flask)打包成Docker镜像,部署到微软云---Azure。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

前情提要:首先创建一个简单的Flask项目,参考上一篇文章
链接: 将 Python (Flask) Web应用部署到Azure应用服务

一、准备环境

1、安装Docker

下载链接:Install Docker Desktop on Windows

2、下载 Linux 内核更新包

将Python项目(Flask)打包成Docker镜像,部署到微软云---Azure
如果出现以上弹窗,点击链接,安装Linux 内核更新包

将Python项目(Flask)打包成Docker镜像,部署到微软云---Azure

运行下载的更新包(系统将提示你提供提升的权限,选择“是”以批准此安装)

下载链接:旧版 WSL 的手动安装步骤 | Microsoft Docs

打开开始菜单,打开Power Shell,位置如下图:
将Python项目(Flask)打包成Docker镜像,部署到微软云---Azure
将 WSL 2 设置为默认版本:

wsl --set-default-version 2

将Python项目(Flask)打包成Docker镜像,部署到微软云---Azure

3、打开 Microsoft Store,下载Ubuntu

选择一个版本,点击获取
将Python项目(Flask)打包成Docker镜像,部署到微软云---Azure
安装完成后,点击打开(首次打开,需要在控制台窗口等待1-2分钟)

为新的 Linux 分发版创建用户帐户和密码:
将Python项目(Flask)打包成Docker镜像,部署到微软云---Azure

4、Visual Studio Code安装Docker插件

安装Azure Tool插件:
安装成功后, Ctrl+Shift+P,输入 Azure:Sign In 进行登录
将Python项目(Flask)打包成Docker镜像,部署到微软云---Azure
安装Docker插件:
将Python项目(Flask)打包成Docker镜像,部署到微软云---Azure

二、将项目打包成Docker镜像 并 部署

1、生成requirements.txt

进入虚拟环境

venv\Scripts\activate

安装 pipreqs

pip install pipreqs

生成依赖包清单:

pipreqs ./ --encoding=utf8 --force

2、编写Dockerfile

新建文件Dockerfile,没有后缀,如下图
将Python项目(Flask)打包成Docker镜像,部署到微软云---Azure

# 基于的基础镜像
FROM python:3.8.10

# 设置工作目录为 /demo/
WORKDIR /demo/

# 将依赖文件拷贝到工作目录
COPY requirements.txt /demo/

# 执行pip指令,安装这个应用所需要的依赖  
RUN pip install -r requirements.txt

# 拷贝当前目录的所有内容拷贝到工作目录下
COPY . /demo/

# 允许外界访问5000端口
EXPOSE 5000

# 设置容器进程为python app.py ,启动
ENTRYPOINT [ "python", "app.py" ]

3、构建镜像

先打开Docker Desktop,放着就好
将Python项目(Flask)打包成Docker镜像,部署到微软云---Azure

docker build -f ./Dockerfile -t images0815 .

images0815 是镜像名

将Python项目(Flask)打包成Docker镜像,部署到微软云---Azure

4、启动容器

docker run -itd -p 5000:5000 --name cntr0815 images0815

-p 5000:5000 为 主机(宿主)端口:容器端口 、
–name cntr0815 images0815 对应 容器名 镜像名
将Python项目(Flask)打包成Docker镜像,部署到微软云---Azure

5、检查容器是否启动

docker ps

将Python项目(Flask)打包成Docker镜像,部署到微软云---Azure

6、创建容器注册表

将Python项目(Flask)打包成Docker镜像,部署到微软云---Azure创建完成后,去注册表的访问密钥功能中,开启管理员用户,如下图
将Python项目(Flask)打包成Docker镜像,部署到微软云---Azure
在Docker插件中,找到刚刚创建的镜像,右键选择Push,如下图所示
选择资源组->容器注册表
将Python项目(Flask)打包成Docker镜像,部署到微软云---Azure
将Python项目(Flask)打包成Docker镜像,部署到微软云---Azure

7、创建Web应用

将Python项目(Flask)打包成Docker镜像,部署到微软云---Azure
选择订阅、资源组、区域、以及应用服务计划,[ 发布* ] 选择 [ Docker容器 ]
将Python项目(Flask)打包成Docker镜像,部署到微软云---Azure
[ 映像源 ] 选择 [ Azure容器注册表 ],选择刚刚创建的注册表 [ registry0815 ]
将Python项目(Flask)打包成Docker镜像,部署到微软云---Azure
创建成功后,点击 Web App的配置,将 [ 仅HTTPS?] 功能 关闭
将Python项目(Flask)打包成Docker镜像,部署到微软云---Azure

8、浏览

在 [ 概述 ] 中点击浏览,或者点击URL,即可进行预览
将Python项目(Flask)打包成Docker镜像,部署到微软云---Azure
将Python项目(Flask)打包成Docker镜像,部署到微软云---Azure

三、更新版本

对代码进行一些更改,然后保存
将Python项目(Flask)打包成Docker镜像,部署到微软云---Azure
重新构建镜像

docker build -f ./Dockerfile -t images0815:v2 .

images0815 是镜像名,v2 是新镜像的标签

将Python项目(Flask)打包成Docker镜像,部署到微软云---Azure
构建完成:
将Python项目(Flask)打包成Docker镜像,部署到微软云---Azure
进入我们之前创建的Web App,选择 [ 部署中心 ] 功能,在标记选项中 选择 [ v2 ] 版本,点击 [ 保存 ]
将Python项目(Flask)打包成Docker镜像,部署到微软云---Azure
再次访问:
将Python项目(Flask)打包成Docker镜像,部署到微软云---Azure

注意: 部署成功之后,可能有5分钟的延迟,如果更新后访问依然是旧版本,可以过一段时间再访问试试

欢迎关注我的博客,与我一起学习,我将持续分享我的学习过程,我是 热爱学习的小翁同学~文章来源地址https://www.toymoban.com/news/detail-487871.html

到了这里,关于将Python项目(Flask)打包成Docker镜像,部署到微软云---Azure的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 将本地Python项目打包成docker镜像,上传到服务器,在docker中运行

    windows11 Docker下载地址:https://docs.docker.com/desktop/install/windows-install/ 虚拟环境可以搭建独立的Python运行环境,使得单个项目的运行环境与其他项目互不影响。 安装完成之后,便可以直接创建虚拟环境了,使用命令 virtualenv env1 进行创建 其中 activate.bat 文件,表示激活虚拟环境。

    2024年02月11日
    浏览(42)
  • Jenkins参数化构建项目(Git+docker部署+Python+flask项目)

    使用 Jenkins 进行 CI/CD 自动化部署,参数化构建 Git 代码拉取, docker 镜像打包, docker 部署 flask 项目一体化流程。 准备工作:jenkins平台部署、项目部署服务器docker安装(这里也可以直接使用jenkins直接部署) 服务器 IP地址 备注 Jenkins 192.168.2.143 docker部署Jenkins 部署服务器 192.168

    2024年03月10日
    浏览(63)
  • SpringBoot项目部署(Docker)——通过Dockerfile将打包好的jar包创建成镜像 & 在IDEA中配置docker,一键启动容器 & 用swagger进行测试

    1.Dockerfile命令初识,CMD…; 2.idea配置docker,图形化界面; 3.编写Dockerfile把jar包制作成镜像,并用idea一键生成和启动容器; 4.在Linux中测试,在宿主机用swagger进行测试; SpringBoot项目部署(jar包)——项目用maven打包成jar包 windows + Linux平台运行 Linux安装java 遇到的问题 Docker是一

    2024年02月05日
    浏览(40)
  • docker网络及部署集群和打包镜像

    清空下前面的docker 镜像、容器 测试 三个网络 问题: docker 是如果处理容器网络访问的? 原理 1、我们每启动一个docker容器,docker就会给docker容器分配一个ip,我们只要按照了docker,就会有一个docker0桥接模式,使用的技术是veth-pair技术! 再次测试 ip addr 2 、再启动一个容器测

    2024年02月02日
    浏览(26)
  • SpringBoot项目打包Docker镜像

    1、创建springboot项目,并在根目录新建Dockerfile文件 Dockerfile文件内容  进到项目根目录打包  构建镜像(不要忽略最后的一个点) 查看镜像列表 启动

    2024年02月16日
    浏览(38)
  • 部署运行jar包方法全解docker镜像打包部署等

    有一种叫做“nohup”的命令,该命令可以让您的应用程序在后台运行,即使您已经断开了与终端的连接也能保持运行状态。 nohup 命令的语法为:  其中,command 是要运行的应用程序的命令,arg1、arg2…argN 则是该命令的参数。 符号表示在后台运行该命令。当运行 nohup 命令时,

    2024年02月10日
    浏览(47)
  • SpringBoot项目如何打包成docker镜像?

    将Spring Boot项目打包成Docker镜像的过程可以分为以下几个步骤: 1. 创建Dockerfile 首先,你需要在Spring Boot项目的根目录下创建一个 Dockerfile 。这个文件包含了Docker镜像构建的所有指令。一个基本的 Dockerfile 可能看起来像这样: 确保替换 my-spring-boot-app-1.0.0.jar 为你的Spring Boot应用

    2024年02月21日
    浏览(35)
  • Vue项目如何打包成Docker镜像包

    要将 Vue 项目打包为 Docker 镜像,可以按照下面的步骤进行操作: 在 Vue 项目根目录下创建一个名为 Dockerfile 的文件。 在 Dockerfile 中定义应用程序所需的环境,例如 Node.js 运行时和依赖项。以下是一个示例: 构建 Docker 镜像。在终端中导航到项目根目录并运行以下命令: 其中

    2024年02月13日
    浏览(47)
  • 前端项目配置 Dockerfile 打包后镜像部署无法访问

    构建镜像 启动镜像容器 命令行访问: 浏览器访问: 该网页无法正常运作localhost 未发送任何数据。 ERR_EMPTY_RESPONSE 知识点: localhost:3001: 仅允许本地主机(即 Docker 容器内部)访问。 0.0.0.0:3001: 允许任何主机(包括容器外部的主机)通过该地址访问服务。

    2024年01月18日
    浏览(27)
  • 项目打包docker镜像,并指定运行的配置文件

    新建dockerfile文件,添加入以下内容 1.修改dockerfile中的配置,与对应文件和jar包的目录保持一致。如果已经有镜像包可忽略打包步骤,直接执行命令启动   2.服务启动的端口在application.properties文件中已配置,后续可根据实际情况修改 3.切换到文件所在目录; cd /home/zj/ 4.执行命

    2024年02月16日
    浏览(25)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包