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

个人网站开发人员百度怎样建设网站

个人网站开发人员,百度怎样建设网站,江门网站制作方案定制,芝罘区网环境: Ubuntu20.04 xinference 问题描述: 怎么把Ubuntu系统虚拟环境中启动命令做成系统服务可以后台运行,每次要这么启动程序 sudo -icd /mnt/program/conda activate xinference_env2XINFERENCE_MODEL_SRCmodelscope CUDA_VISIBLE_DEVI…

环境:

Ubuntu20.04

xinference

问题描述:

怎么把Ubuntu系统虚拟环境中启动命令做成系统服务可以后台运行,每次要这么启动程序

sudo -icd /mnt/program/conda activate xinference_env2XINFERENCE_MODEL_SRC=modelscope CUDA_VISIBLE_DEVICES=0 xinference-local --host 0.0.0.0 --port 9997

解决方案:

1.查看conda路径

which conda

/root/miniconda/bin/conda

2.根据此路径, conda 安装目录应该是 /root/miniconda,相应的初始化脚本在:

/root/miniconda/etc/profile.d/conda.sh

3.用 root 用户启动,编辑xinference.service

nano /etc/systemd/system/xinference.service

[Unit]
Description=Xinference Service
After=network.target[Service]
Type=simple
User=root
WorkingDirectory=/mnt/program
Environment=XINFERENCE_MODEL_SRC=modelscope
Environment=CUDA_VISIBLE_DEVICES=0
ExecStart=/bin/bash -c '\source /root/miniconda/etc/profile.d/conda.sh && \conda activate xinference_env2 && \exec xinference-local --host 0.0.0.0 --port 9997'
Restart=always
RestartSec=5[Install]
WantedBy=multi-user.target

在这里插入图片描述

4.启动测试

  • 确保 /mnt/program 路径存在,且 root 用户有权限访问。
  • 确保环境 xinference_env2 已经创建且可用。
  • 保存文件后执行:
sudo systemctl daemon-reload
sudo systemctl start xinference

开机自启:

sudo systemctl enable xinference

重启:

sudo systemctl restart xinference
  • sudo journalctl -u xinference -f 查看实时日志,确认服务启动情况。

在这里插入图片描述

二、另外一版本

  1. 使用编辑器新建文件:
sudo nano /etc/systemd/system/ragflow.service
  1. 写入以下内容:
[Unit]
Description=Ragflow Backend Service
After=network.target[Service]
Type=simple
User=root
WorkingDirectory=/home/www/ragflow/ragflow
Environment=PYTHONPATH=/home/www/ragflow/ragflow
Environment=NLTK_DATA=/home/www/ragflow/ragflow/nltk_data
ExecStart=/bin/bash -c '\source /home/www/ragflow/ragflow/.venv/bin/activate && \bash docker/launch_backend_service.sh'
Restart=always
RestartSec=5[Install]
WantedBy=multi-user.target

在这里插入图片描述

说明

  • User=root:请替换成您希望运行该服务的用户,确保该用户对相关目录有读写和执行权限。
  • WorkingDirectory 用来指定进入的目录,相当于 cd
  • Environment=PYTHONPATH=... 设置环境变量。
  • ExecStart 里先用 bash 执行激活虚拟环境的命令,再执行后续的启动脚本。
  • Restart=alwaysRestartSec=5 保证服务异常退出后自动重启,5秒后重启。

启用服务

执行以下命令:

sudo systemctl daemon-reload
sudo systemctl enable ragflow.service
sudo systemctl start ragflow.service

然后查看状态和日志确认是否启动正常:

sudo systemctl status ragflow.service
sudo journalctl -u ragflow.service -f

在这里插入图片描述

额外提示

  • 如果 docker/launch_backend_service.sh 脚本本身启动了守护进程(daemonize),可能需要将 Type 改为 forking 或根据脚本特性调整。
  • 如果启动脚本依赖其他环境变量或路径,也可以在服务文件中用 Environment= 添加。
  • 确保 .venv/bin/activate 文件权限正常,且虚拟环境无误。

启动命令做成系统服务:sudo -i  cd/mnt/code/ragflow 在按順序执行source .venv/bin/activate             export PYTHONPATH=$(pwd)               bash docker/entrypoint.sh 

你要把一组命令做成系统服务启动,核心是将这些命令写到一个可执行脚本里,再用 systemd 创建服务单元来管理它。


你给的命令是:

sudo -i
cd /mnt/code/ragflow
source .venv/bin/activate
export PYTHONPATH=$(pwd)
bash docker/entrypoint.sh

正确写法及注意点

  1. sudo -i 是切换为 root 的交互式 shell,不适合写入服务脚本。服务运行时一般由 root(或指定用户)执行,无需再切换。

  2. 环境变量和激活虚拟环境需要写到脚本里。

  3. source 是 bash 内置,脚本需用 bash 解释。


推荐步骤

1. 写一个启动脚本 /usr/local/bin/ragflow-start.sh

#!/bin/bash
cd /mnt/code/ragflow || exit 1# 激活虚拟环境
source .venv/bin/activate# 设置环境变量
export PYTHONPATH=$(pwd)# 启动主程序(保持前台运行)
exec bash docker/entrypoint.sh

说明:

  • exec 替换当前 shell 进程,方便 systemd 管理。
  • 加上 || exit 1 防止目录不存在导致意外执行后续命令。
  • 脚本需赋予执行权限:
chmod +x /usr/local/bin/ragflow-start.sh

2. 编写 systemd 服务文件, /etc/systemd/system/ragflow.service

[Unit]
Description=Ragflow Service
After=network.target[Service]
Type=simple
User=root
WorkingDirectory=/mnt/code/ragflow
ExecStart=/usr/local/bin/ragflow-start.sh
Restart=on-failure[Install]
WantedBy=multi-user.target

说明:

  • User=root 如需使用其他用户,改成对应用户名。
  • Restart=on-failure 出错自动重启。
  • WorkingDirectory 可留空,因为脚本内已切换目录,但写上更安全。

3. 启用并启动服务

sudo systemctl daemon-reload
sudo systemctl enable ragflow.service
sudo systemctl start ragflow.service

4. 查看服务状态和日志

sudo systemctl status ragflow.service
sudo journalctl -u ragflow.service -f

总结

  • 把启动命令写入单独脚本。
  • 用 systemd 调用这个脚本,管理进程生命周期。
  • 避免使用 sudo -i,服务本身拥有权限即可。
  • 确保虚拟环境、环境变量在脚本中正确设置。
http://www.dtcms.com/wzjs/548708.html

相关文章:

  • 没有注册公司怎么做网站wordpress用虚拟主机还是vps
  • 遵义住房城乡建设厅网站建工类培训机构
  • 网站风险怎么解决方案爱站网关键词挖掘工具熊猫
  • 甘肃省住房和城乡建设部网站烟台专业做网页的公司
  • 网站的建设服务asp在网站制作中的作用
  • 深圳网站建设讯美企业网站管理源码
  • 网站ftp上传到空间net网站建设教程
  • 企业网站推广怎么做淘宝网店制作
  • php模板网站怎么修改精品网站建设费用磐石网络
  • 专业企业建站系统常见的网页设计工具
  • 优化网站速度的要点网站解除域名绑定
  • 北京企业建站技术制作自己的网站教程
  • 网站建设aichengkeji苏宁易购网站建设 的定位
  • 在家做网站怎么赚钱嵩县网站建设
  • 查看网站是否备案辽宁省住房与城乡建设厅网站
  • 深圳网站建设 东毅虎wordpress 挂码
  • 网页设计站暴雪时分电视剧免费观看
  • 小说网站建设后如何赚钱软件开发的八个步骤
  • 内江建网站网站建设招标方案
  • 做生存分析的网站有哪些织梦建站教程
  • 用ps怎么做网站背景惠州模板网站
  • 网站建设 推广400电话wordpress是博客
  • 免费网站可以做cpa?网页翻译在哪
  • c mvc网站做404域名证书如何查询
  • 注册公司在哪个网站seoul是韩国哪个城市
  • 短视频推广引流泰安短视频seo
  • 安徽做网站公司企业服务平台官网入口
  • IP网站登记七牛云 wordpress
  • 如何做专题网站网络建设方案总结
  • 邢台做网站可信赖平台推广是什么