首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >Linux离线部署 Python应用

Linux离线部署 Python应用

作者头像
用户11690639
发布2026-06-17 21:58:32
发布2026-06-17 21:58:32
500
举报

背景

JAVA 开发Web项目,有一个预测算法的小功能,我们用Python写了一个简单的脚本(下次有时间可以把算法写写),本地是Windows开发的程序,线上是离线环境(没有网络),需要把Python放到Linux上运行,重点是Python部署时需要很多依赖类库,都是联网下载的,怎么把Python打包运行在Linux环境呢? Python 项目结构为 forcast |-- sarima.py (Python 程序脚本) |-- config.json (数据库配置) |-- requirements.txt (依赖包及版本信息)

有两个思路:(1)用docker容器化部署安装 (2)是否可像Java一样通过Maven将依赖都打到项目中;

docker容器化部署

第一个呢,还得在离线环境上安装docker。。。想想有点麻烦;我其实按第二个办法,第一个大致步骤如下所示,供参考:

代码语言:javascript
复制
(1)准备好环境:Python 3.X环境、Docker
(2)编写Dockerfile文件:用来定义镜像构建过程(用于定义如何将Python项目打包成Docker镜像,参考见下文)
(3)构建安Docker	镜像:docker build -t forcast ; 
(4)运行容器: docker run -d -p 8080:8080 forcast-container (将容器中的8080端口映射到宿主机8080端口,这样可以在浏览器访问 http://ip:8080)
(5)自动化部署脚本编写(参考见下文)

Dockerfile示例如下所示:

代码语言:javascript
复制
#使用官方Python基础镜像
FROM python:3.9-slim
#设置工作目录
WORKDIR /data/webapp/pythonapp
#将项目依赖COPY到工作目录中去
COPY requirements.txt ./
#安装依赖并清理缓存
RUN pip install --no-cache-dir -r requirements.txt
#如有脚本,可将Python脚本复制到容器中
#COPY deploy.sh ./
#如有脚本,赋予执行权限
#RUN chmod +x deploy.sh
#如有应用端口可暴露应用端口
EXPOSE 8080
#运行Python应用
CMD ["python","app.py"]

自动化部署脚本可以自动化打包和部署流程,如下deploy.sh供参考且记着确保脚本有执行权限 chmod +x deploy.sh:

代码语言:javascript
复制
#!/bin/gash
#构建Docker镜像
docker build -t forcast .
#停止现有的容器
docker stop forcast-container || true
docker rm forcast-container ||true

#启动新的容器
docker
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2026-06-17,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 背景
    • docker容器化部署
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档