centos 启动停止docker,并部署 flask 容器化应用

简介: centos 启动停止docker,并部署 flask 容器化应用
#安装docker
yum install docker -y

在服务器上为容器开放一些端口

博主开放了 60001-60900

-p表示绑定端口 , -d 表示 后台运行

docker pull nginx
docker run -p 60001:80  -d   nginx

部署成功

下边让我们在本地运行一个docker服务放在服务器上吧

一、更新系统软件包
yum update -y
二、安装软件管理包和可能使用的依赖
yum -y groupinstall "Development tools"
yum install openssl-devel bzip2-devel expat-devel gdbm-devel readline-devel sqlite-devel psmisc libffi-devel
三、下载Pyhton3到/usr/local 目录
cd /usr/local
wget https://www.python.org/ftp/python/3.6.6/Python-3.6.6.tgz
解压
tar -zxvf Python-3.6.6.tgz
进入 Python-3.6.6路径
cd Python-3.6.6
编译安装到指定路径
./configure --prefix=/usr/local/python3
注意:/usr/local/python3 路径可以自己指定,自己记着就行,下边要用到。
安装python3
make
make install
安装完成之后 建立软链接 添加变量 方便在终端中直接使用python3
ln -s /usr/local/python3/bin/python3.6 /usr/bin/python3
Python3安装完成之后pip3也一块安装完成,不需要再单独安装
同样给pip3建立软链接
ln -s /usr/local/python3/bin/pip3.6 /usr/bin/pip3
#修复pip
python -m ensurepip
python -m pip install --upgrade pip
#创建虚拟环境
cd /data/env
virtualenv --python=/usr/bin/python3 pyweb
#激活虚拟环境
cd /data/env/pyweb/bin/
source activate
(pyweb)pip install flask
(pyweb)pip install gunicorn gevent
(pyweb)pip freeze > requirements.txt
此时新建web项目
testflask/app.py
from flask import Flask
app = Flask(__name__)
@app.route('/')
def hello_world():
    return 'Hello docker & flask!!!!'
if __name__ == '__main__':
    app.run()

testflask/gunicorn.conf.py

workers = 5 # 定义同时开启的处理请求的进程数量,根据网站流量适当调整
worker_class = "gevent" # 采用gevent库,支持异步处理请求,提高吞吐量
bind = "0.0.0.0:8888" # 监听IP放宽,以便于Docker之间、Docker和宿主机之间的通信

可以使用gunicorn命令来测试是否可以正确运行,命令如下:

gunicorn app:app -c gunicorn.conf.py

#运行镜像
docker pull lmk19980312/testflask:v1
sudo docker run -d -p 60002:60002 --name testflaskv1 lmk19980312/testflask:v1

如此一来想要迁移 docker 云服务的时候,只需要运行docker run -d 。。。。

即可部署一个服务

相关文章
|
1天前
|
存储 Linux Docker
python项目 以docker形式打包部署全流程
在很久很久以前,我已经听过Docker的大名,当时服务着急上线虽然考虑过用Docker来部署我的服务,但是因为赶期的原因放弃了。 这两天因为华为云服务器到期,而且阿里云服务器优惠力度特别大的原因,我要把华为云服务器里的工程迁移到阿里云。 迁移的过程中,大量的时间精力浪费在了重装python,加载依赖,迁移项目,配置端口等环境配置的工作上。 我在想,如果当时用了Docker部署,我至于受这气?
|
1天前
|
Web App开发 测试技术 数据安全/隐私保护
【Docker项目实战】使用Docker部署linkding书签管理器
【6月更文挑战第15天】使用Docker部署linkding书签管理器
13 7
|
2天前
|
Nacos Docker 容器
docker部署nacos
docker部署nacos
13 2
|
2天前
|
应用服务中间件 nginx Docker
docker部署nginx
docker部署nginx
14 1
|
2天前
|
消息中间件 存储 数据安全/隐私保护
docker部署rabbitmq
docker部署rabbitmq
6 0
|
2天前
|
关系型数据库 MySQL Docker
docker部署mysql
docker部署mysql
9 1
|
2天前
|
NoSQL Redis Docker
docker部署redis
docker部署redis
13 4
|
Ubuntu 安全 应用服务中间件
部署 Flask 应用
部署 Flask 应用
748 0
|
1月前
|
API 数据库 数据安全/隐私保护
Flask框架在Python面试中的应用与实战
【4月更文挑战第18天】Django REST framework (DRF) 是用于构建Web API的强力工具,尤其适合Django应用。本文深入讨论DRF面试常见问题,包括视图、序列化、路由、权限控制、分页过滤排序及错误处理。同时,强调了易错点如序列化器验证、权限认证配置、API版本管理、性能优化和响应格式统一,并提供实战代码示例。了解这些知识点有助于在Python面试中展现优秀的Web服务开发能力。
37 1
|
4天前
|
开发框架 数据库 开发者
Web开发新境界:用Python玩转Django和Flask!
【6月更文挑战第12天】Python的Web开发框架Django和Flask各有千秋。Django是全能型框架,适合快速开发大型应用,提供ORM、模板引擎、URL路由和后台管理等全面功能。Flask则轻量级且灵活,适用于小型到中型应用,以其简单易用、高度可扩展和灵活路由著称。两者结合使用,能应对各种Web开发需求。