docker部署flask服务

docker

Docker是一种开源的容器化平台,它可以帮助开发者将应用程序及其依赖项打包成易于交付的、可移植的容器。Docker容器是基于Linux容器技术构建的,可以在任何类型的主机上运行,包括虚拟机、物理机或云服务器。

Docker容器提供了更高的性能、可靠性和安全性,可与现有的基础设施和技术堆栈集成,并使应用程序在不同环境之间更加可移植和可重现。

Docker还包括一组工具和API,帮助开发者自动化构建、测试和部署应用程序。它可以与CI/CD工具如Jenkins、GitLab等集成,使持续集成、持续交付变得更加简单和高效。

flask

Flask是一个基于Python编写的轻量级Web应用框架,它可以帮助开发者快速搭建Web应用程序。Flask具有以下特点:

  • 轻量级:Flask只包含必要的工具和功能,却可以扩展到任何规模的应用程序。
  • 灵活性:Flask没有固定的方式来组织应用程序。开发者可以根据需要自由地组合模块,创建定制化的框架。
  • 易于学习和使用:Flask的API清晰简单,文档详尽,使得初学者可以很容易上手。
  • 大量扩展:Flask拥有强大的扩展系统,可以轻易地添加第三方扩展库。

使用Flask可以快速搭建RESTful API、Web应用程序、企业级应用程序等,是一个强大且灵活的框架。

开始部署

dockerfile

bash 复制代码
# ubuntu
FROM ubuntu:22.04

# 设置工作目录
WORKDIR /workspace/py

# 复制应用程序代码和资源文件到容器中
# 这里是conda的环境
ADD ./env.tar.gz ./env/
COPY ./demo ./demo
COPY ./run.sh ./

#RUN apt-get update && \

#    apt-get -y install ffmpeg && \
RUN    chmod +x ./run.sh

# 加一个脚本控制容器,不加的话我这里程序异常的话容器会停止
COPY ./sleep.py ./

# 暴露端口
EXPOSE 12346

# 启动应用程序
CMD ["./run.sh"]

start.sh

bash 复制代码
source ./env/bin/activate
python sleep.py
cd demo

sleep.py

python 复制代码
import time

while True:
    time.sleep(1)
    print("sleep")
相关推荐
实名上网宋凯宣6 小时前
Django
后端·python·django
镜子AI6 小时前
镜子AI 技术复盘:三条自动化链路上的“停止条件“设计
运维·人工智能·自动化
tianyuanwo7 小时前
NetBox 数据库详解:当“关系型数据库”被装进一个网络运维的领域模型里
运维·数据库·netbox
如若1237 小时前
【论文复现】CoFailMed:从零复现医学图像分割的共享失败审计,含完整代码流程与科研绘图
人工智能·python
螺蛳粉 螺蛳粉8 小时前
第 05 篇:etcd 深入:Raft 共识、watch 机制与快照备份恢复实战(底座认知 05)
docker·云原生·容器·kubernetes·etcd·分布式存储·kube-apiserver
砚底藏山河9 小时前
python量化自定义周期 K 线合成
java·开发语言·数据库·python·金融
视觉小萌新9 小时前
AI Class 3 · Chapter 1:变量、字符串、list/dict、if/for(python学习-小白版-有经验可跳过)
python·学习·list
知已难寻9 小时前
03 · OpenStack的计算管理 Nova
运维·服务器·开发语言·云原生·云计算·openstack·开源软件
薛定谔的猫-菜鸟程序员9 小时前
软件架构设计师开发资料大全(从入门到精通)
后端·python·系统架构·flask·架构设计师
huainingning10 小时前
Windows syslog日志服务器搭建与模拟器对接
运维·服务器·智能路由器