Your_Spotify项目本地化部署指南(非Docker方式)
2025-07-09 05:03:04作者:廉皓灿Ida
项目概述
Your_Spotify是一个开源的个性化音乐数据分析平台,能够帮助用户可视化自己的Spotify收听习惯和统计数据。本文将详细介绍如何在本地环境中不使用Docker容器的情况下部署Your_Spotify项目。
环境准备
在开始部署前,请确保您的系统满足以下要求:
- 版本控制系统:需要安装Git工具用于获取项目代码
- 数据库:MongoDB数据库服务(建议版本4.4+)
- 运行时环境:NodeJS环境(建议使用LTS版本)
后端服务部署
1. 获取项目代码
通过版本控制工具获取项目源代码,建议使用浅克隆方式减少下载量。
2. 安装依赖
进入server目录执行依赖安装命令:
yarn install
3. 构建项目
执行构建命令生成可执行文件:
yarn build
4. 数据库迁移
运行数据库迁移命令,需要配置正确的环境变量:
yarn migrate
5. 启动服务
使用Node运行构建后的服务:
node lib/bin/www.js
环境变量配置:需要配置与docker-compose中相同的环境变量,并额外添加PORT变量指定服务端口。
前端服务部署
1. 安装依赖
进入client目录执行:
yarn install
2. 构建项目
执行前端构建命令:
yarn build
3. 配置API端点
在生成的build目录中:
- 复制variables-template.js为variables.js
- 修改其中的API_ENDPOINT为后端服务实际地址
4. 部署静态网站
可以使用任意静态网站服务器部署build目录内容,推荐使用serve工具:
serve -s build
重要提示:必须配置所有404错误重定向到index.html,serve工具默认已实现此功能。如使用Apache,可参考项目中的.htaccess文件配置。
使用systemd管理服务
对于生产环境,建议使用systemd管理MongoDB和后端服务。
1. 创建服务单元文件
在用户目录下创建服务配置文件:
~/.config/systemd/user/your_spotify.service
示例配置内容:
[Unit]
Description=Your Spotify Backend
Wants=network-online.target mongodb.service
After=syslog.target network.target nss-lookup.target network-online.target
[Service]
EnvironmentFile=/path/to/your/env/file
ExecStart=/path/to/node /path/to/your_spotify/server/lib/bin/www
StandardOutput=journal
Restart=on-failure
WorkingDirectory=/path/to/your_spotify/server
[Install]
WantedBy=multi-user.target
2. MongoDB服务配置
单独创建MongoDB服务单元文件:
[Unit]
Description=MongoDB
Wants=network-online.target
After=syslog.target network.target nss-lookup.target network-online.target
[Service]
Type=forking
ExecStart=/path/to/mongod --dbpath /path/to/data --logpath /path/to/logs --fork --bind_ip 127.0.0.1 --port 40097
StandardOutput=journal
Restart=on-failure
WorkingDirectory=/path/to/mongodb
[Install]
WantedBy=multi-user.target
3. 启用并启动服务
执行以下命令启用并启动服务:
systemctl --user --now enable mongodb
systemctl --user --now enable your_spotify
常见问题排查
- 端口冲突:确保MongoDB和后端服务使用的端口未被占用
- 环境变量缺失:检查所有必需环境变量是否已正确配置
- 依赖问题:如遇到模块缺失错误,尝试删除node_modules后重新安装依赖
- 数据库连接失败:验证MongoDB服务是否正常运行,连接字符串是否正确
通过以上步骤,您应该能够成功在本地环境中部署并运行Your_Spotify项目,开始探索您的Spotify收听数据分析之旅。