当前位置: 首页 > ai >正文

【Python教程】CentOS系统下Miniconda3安装与Python项目后台运行全攻略

一、引言

为了在CentOS系统上高效地开发和运行Python项目,我们常常需要借助Miniconda3来管理Python环境。本文将详细介绍如何在CentOS系统上安装Miniconda3,并将Python项目部署到后台运行。

二、Miniconda3和CentOS系统介绍

Miniconda3介绍

Miniconda是一个轻量级的Anaconda发行版,它只包含了conda、Python以及一些必要的依赖包。相比于Anaconda,Miniconda占用的磁盘空间更小,安装速度更快,非常适合在资源有限的环境中使用。conda是一个强大的包管理和环境管理工具,它可以帮助我们轻松地创建、管理和切换不同的Python环境,避免不同项目之间的依赖冲突。

三、Miniconda3的安装步骤

(一)下载Miniconda3安装包

打开终端,使用wget命令从官方网站下载Miniconda3的安装包。以下是下载最新版本的Miniconda3的命令:

wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh

(二)运行安装脚本

下载完成后,运行安装脚本。在终端中执行以下命令:

bash Miniconda3-latest-Linux-x86_64.sh

运行脚本后,会出现一系列提示信息,按照提示依次按下回车键,阅读许可协议并输入“yes”同意协议,选择安装路径(默认路径为用户的主目录下的miniconda3文件夹),最后输入“yes”完成安装。

(三)激活conda环境

安装完成后,需要激活conda环境。在终端中执行以下命令:

source ~/.bashrc

然后验证conda是否安装成功,执行以下命令查看conda的版本信息:

conda --version

如果输出了conda的版本号,则说明安装成功。

四、Python项目的部署过程

(一)创建Python虚拟环境

为了避免不同项目之间的依赖冲突,建议为每个Python项目创建一个独立的虚拟环境。在终端中执行以下命令创建一个名为myenv的虚拟环境,并指定Python版本为3.8:

conda create -n myenv python=3.8

创建完成后,激活该虚拟环境:

conda activate myenv

(二)安装项目依赖

在激活的虚拟环境中,使用pip或conda安装项目所需的依赖包。例如,如果项目依赖于Flask和numpy,可以执行以下命令进行安装:

pip install flask numpy

或者使用conda进行安装:

conda install flask numpy

(三)上传或克隆项目代码

将本地的Python项目代码上传到CentOS服务器,或者使用git命令从代码仓库中克隆项目代码。例如,使用以下命令克隆一个GitHub上的项目:

git clone https://github.com/username/repository.git

(四)配置项目

进入项目目录,根据项目的需求进行配置。例如,修改配置文件、设置环境变量等。

Python项目部署步骤截图

五、将Python项目设置为后台运行

(一)使用nohup命令

nohup命令可以让进程在终端关闭后继续运行。在项目目录下,执行以下命令将Python脚本在后台运行,并将输出重定向到一个日志文件中:

nohup python main.py > output.log 2>&1 &

解释一下命令的各个部分:

  • nohup:忽略挂断信号,使进程在终端关闭后继续运行。
  • python main.py:运行Python脚本。
  • >:重定向标准输出。
  • output.log:指定日志文件名。
  • 2>&1:将标准错误输出重定向到与标准输出相同的位置。
  • &:使命令在后台运行。

按下Enter键执行命令后,会看到一个输出类似于nohup: ignoring input and appending output to ‘output.log’的消息,这意味着Python脚本已经在后台启动。

(二)使用screen命令

screen是一个终端多路复用器,可以让我们在断开终端后重新连接到会话。首先,安装screen:

sudo yum install screen

然后,启动一个新的screen会话:

screen -S mysession

在screen会话中运行Python脚本:

python main.py

按下Ctrl+A然后按D来分离screen会话。这样,即使关闭终端,Python脚本仍然会在后台运行。如果需要重新连接到screen会话,可以使用以下命令:

screen -r mysession

(三)使用systemd服务

systemd是CentOS的初始化系统,可以用来管理守护进程。创建一个新的服务文件:

sudo vi /etc/systemd/system/my_python_service.service

在文件中添加以下内容:

[Unit] Description=My Python Script After=network.target [Service] ExecStart=/usr/bin/python3 /path/to/main.py WorkingDirectory=/path/to/your/script Restart=always User=your_username [Install] WantedBy=multi-user.target

解释一下配置文件的各个部分:

  • [Unit]:描述服务的基本信息。
  • Description:服务的描述信息。
  • After:指定服务在网络服务启动后启动。
  • [Service]:描述服务的具体配置。
  • ExecStart:指定要运行的命令。
  • WorkingDirectory:指定脚本的工作目录。
  • Restart:确保脚本在崩溃或系统重启后自动重启。
  • User:指定运行脚本的用户。
  • [Install]:描述服务的安装信息。
  • WantedBy:指定服务在多用户模式下启动。

保存并退出编辑器,重新加载systemd配置:

sudo systemctl daemon-reload

启动服务并设置为开机自启动:

sudo systemctl start my_python_service sudo systemctl enable my_python_service

六、检查和管理后台运行项目

(一)检查项目运行状态

可以使用以下命令检查后台运行的Python进程:

ps aux | grep python

这将列出与Python脚本相关的进程信息,根据输出找到进程ID(PID)。

(二)查看日志文件

如果使用nohup命令将输出重定向到了日志文件,可以使用以下命令查看日志文件的内容:

tail -f output.log

这将实时显示日志文件的最新内容。

(三)停止项目运行

如果需要停止后台运行的Python项目,可以使用以下命令终止相关进程:

kill <pid>

<pid>替换为实际的进程ID。

http://www.xdnf.cn/news/13841.html

相关文章:

  • visual studio2019+vcpkg管理第三方库
  • Vastbase的常用操作
  • 表格对比工具推荐,快速比对Excel文件
  • 用AI思维重塑人生:像训练神经网络一样优化自己
  • 图数据库如何构筑 Web3 风控防线 | 聚焦批量注册与链上盗转
  • Node.js 检测视频链接是否可以播放(批量检测)
  • C++题解 P1525 Cantor表
  • (十四)自然语言处理中的深度学习:语言表征、模型架构与计算语言学基础
  • vue3 双容器自动扩展布局 根据 内容的多少 动态定义宽度
  • 【Pytorch】(1)Pytorch环境安装-②安装Pytorch
  • 激光雷达 + 视觉相机:高精度位姿测量方案详解
  • QCustomPlot 中实现拖动区域放大‌与恢复
  • Python打卡第53天
  • 【SAS求解多元回归方程】REG多元回归分析-多元二次回归
  • 论文略读:AutoG: Towards automatic graph construction from tabular data
  • 拍摄的照片模糊,有什么方法可以一键变清晰吗?
  • 头文件管理
  • 1.线性表的顺序存储-顺序表
  • FastAPI基础入门(四)
  • 【推荐算法课程二】推荐算法介绍-深度学习算法
  • cocos android打包 错误总结
  • QCoreApplication QApplication
  • 【2025】Ubuntu22.04深度学习环境搭建记录
  • Java常用类库大全(学习笔记)持续更新中
  • JS手写代码篇---手写sleep
  • fbx导入blender结构错乱,但在threejs中加载正常
  • 【Python打卡Day36】信贷项目的神经网络训练@浙大疏锦行
  • HALCON第三讲->特征提取
  • HTML常用标签(上)
  • 位运算基础