目录

第一章 概述

第二章 创建启动脚本

第三章 创建systemd服务文件

第四章 启用和启动服务

第五章 常用管理命令

第六章 验证脚本

注意事项

第一章 概述

本文介绍了为Index-TTS-vLLM创建systemd开机启动服务的完整方案。首先创建启动脚本,包含环境切换和服务启动命令,并设置执行权限;然后配置systemd服务文件,定义服务属性、执行路径和重启策略;通过systemctl命令启用自启动并管理服务。方案还提供了服务状态检查、日志查看等常用命令,以及手动测试脚本的方法,并特别强调了路径配置、conda环境、用户权限和GPU内存等注意事项。该方案可实现Index-TTS服务的自动化管理和系统启动时自动运行。

创建一个开机启动脚本,支持systemd服务管理。以下章节我们进行完整的解决方案描述。

第二章 创建启动脚本

首先创建一个执行脚本:

sudo nano /usr/local/bin/index-tts-vllm-start.sh

内容如下:

#!/bin/bash

# Index-TTS-vLLM 启动脚本
SCRIPT_DIR="/root/index-tts-vllm"
CONDA_ENV="index-tts-vllm"
MODEL_DIR="/root/index-tts-vllm/checkpoints/Index-TTS-1.5-vLLM"
PORT="11996"
GPU_MEMORY="0.3"

# 切换到工作目录
cd "$SCRIPT_DIR" || {
    echo "错误: 无法切换到目录 $SCRIPT_DIR"
    exit 1
}

# 激活conda环境
source /root/miniconda3/etc/profile.d/conda.sh
conda activate "$CONDA_ENV" || {
    echo "错误: 无法激活conda环境 $CONDA_ENV"
    exit 1
}

# 启动API服务
exec python api_server.py \
    --model_dir "$MODEL_DIR" \
    --port "$PORT" \
    --gpu_memory_utilization "$GPU_MEMORY"

给脚本执行权限:

sudo chmod +x /usr/local/bin/index-tts-vllm-start.sh

第三章 创建systemd服务文件

sudo nano /etc/systemd/system/index-tts-vllm.service

内容如下:

[Unit]
Description=Index-TTS vLLM API Server
After=network.target
Wants=network.target

[Service]
Type=simple
User=root
WorkingDirectory=/root/index-tts-vllm
ExecStart=/usr/local/bin/index-tts-vllm-start.sh
Restart=always
RestartSec=10
StandardOutput=journal
StandardError=journal

# 环境变量(根据需要调整)
Environment="PYTHONUNBUFFERED=1"

[Install]
WantedBy=multi-user.target

第四章 启用和启动服务

# 重新加载systemd配置
sudo systemctl daemon-reload

# 启用开机自启动
sudo systemctl enable index-tts-vllm.service

# 立即启动服务
sudo systemctl start index-tts-vllm.service

# 检查服务状态
sudo systemctl status index-tts-vllm.service

第五章 常用管理命令

# 查看服务状态
sudo systemctl status index-tts-vllm

# 停止服务
sudo systemctl stop index-tts-vllm

# 重启服务
sudo systemctl restart index-tts-vllm

# 查看服务日志
sudo journalctl -u index-tts-vllm -f

# 禁用开机自启动
sudo systemctl disable index-tts-vllm

第六章 验证脚本

在部署systemd服务前,您可以先手动测试脚本:

# 直接运行测试
sudo /usr/local/bin/index-tts-vllm-start.sh

注意事项

  1. 路径确认:请确保脚本中的路径与您的实际安装路径一致

  2. Conda路径:如果conda安装路径不同,请修改source /root/miniconda3/etc/profile.d/conda.sh为您的实际路径

  3. 用户权限:脚本以root用户运行,如果需要其他用户,请修改service文件中的User字段

  4. GPU内存:根据您的GPU显存情况调整gpu_memory_utilization参数

这样配置后,Index-TTS服务将在系统启动时自动运行,并且可以通过systemd进行管理。

Logo

火山引擎开发者社区是火山引擎打造的AI技术生态平台,聚焦Agent与大模型开发,提供豆包系列模型(图像/视频/视觉)、智能分析与会话工具,并配套评测集、动手实验室及行业案例库。社区通过技术沙龙、挑战赛等活动促进开发者成长,新用户可领50万Tokens权益,助力构建智能应用。

更多推荐