一、目的
本地写好一个flask应用,用docker封装,上传至自己的服务器,完成部署。
流程图:
二、实验环境
本地:windows10 1909
服务器:阿里云centos系统
三、所需软件
1.dockerdesktop
2.pycharm 2020.3.3
四、步骤
1.本地完成flask应用的编写
(1)在pycharm里新建一个flask应用docker_flask
(2)安装gunicorn,gevent包
(3)新建gunicorn.config.py文件,并填入以下内容
|
1
2
3 |
workers = 5 # 定义同时开启的处理请求的进程数量,根据网站流量适当调整
worker_class = "gevent" # 采用gevent库,支持异步处理请求,提高吞吐量
bind = "0.0.0.0:8080" # 这里8080可以随便调整 |
(4)新建requirements.txt文件,并填入以下内容
flask
gunicorn
gevent
(5)创建dockerfile文件,并填入以下内容
|
1
2
3
4
5
6
7
8
9 |
from python:3.7
workdir /usr/src/app
copy requirements.txt ./
run pip install -r requirements.txt -i
copy . .
cmd ["gunicorn", "app:app", "-c", "./gunicorn.conf.py"] #前一个app是python启动的文件名,即app.py;后一个是flask项目里预启动的应用名 |
(6)项目结构
2.构建docker镜像
1.进入本项目的目录
2.构建镜像,输入如下命令
|
1 |
docker build -t 'docker_flask' . |
然后会执行六步操作,咋们不用管它,直接看结果
查看一下
好了,到这里咱们自制的镜像就弄好了,可以在本地跑跑,实验下。
3.上传镜像到阿里云仓库
(1)在阿里云上创建一个自己的docker仓库。
(2)上传镜像
1.登录阿里云docker registry,记得用户名换成自己的。
|
1 |
docker login --username=你的阿里云用户名 registry.cn-hangzhou.aliyuncs.com |
登录密码就是你的阿里云登录密码
2.输入以下两行命令,将镜像推送到registry
|
1
2 |
docker tag [镜像的id] registry.cn-hangzhou.aliyuncs.com/命名空间/仓库名称:[镜像版本号]
docker push registry.cn-hangzhou.aliyuncs.com/命名空间/仓库名称:[镜像版本号] |
然后又不用管,让它自己跑完就行
我这里是之前上传上去了
4.在服务器上拉取这个镜像并运行(当然服务器上得先把docker安好)
|
1 |
docker pull registry.cn-hangzhou.aliyuncs.com/命名空间/仓库名:[镜像版本号] |
ssh登录服务器,输入上面的命令,然后查看一下是否拉下来了
4.运行一下,看看能不能成
这里我把docker的8080端口映射到服务器的28080端口上
好了,输入服务器ip:28080,看看能不能看到hello world!(记得开放端口)
到此这篇关于docker部署flask应用的实现步骤的文章就介绍到这了,更多相关docker部署flask应用内容请搜索快网idc以前的文章或继续浏览下面的相关文章希望大家以后多多支持快网idc!
原文链接:https://blog.csdn.net/qq_41452937/article/details/104660945
相关文章
- 利用FTP和计划任务自动备份网站数据和数据库 2025-05-27
- 服务器技术之硬件冗余技术 2025-05-27
- 服务器是租用还是服务器托管好? 2025-05-27
- 什么是DNS以及它如何影响服务器? 2025-05-27
- 刀片服务器与机架服务器的区别介绍 2025-05-27
- 2025-07-10 怎样使用阿里云的安全工具进行服务器漏洞扫描和修复?
- 2025-07-10 怎样使用命令行工具优化Linux云服务器的Ping性能?
- 2025-07-10 怎样使用Xshell连接华为云服务器,实现高效远程管理?
- 2025-07-10 怎样利用云服务器D盘搭建稳定、高效的网站托管环境?
- 2025-07-10 怎样使用阿里云的安全组功能来增强服务器防火墙的安全性?
快网idc优惠网
QQ交流群
-
2025-05-26 91
-
2025-05-27 108
-
2025-05-26 94
-
2025-05-27 90
-
2025-05-26 36
















