使用PM2部署ChatGPT-Web-Midjourney-Proxy项目的完整指南
2025-06-04 02:07:16作者:宣海椒Queenly
项目概述
ChatGPT-Web-Midjourney-Proxy是一个结合了ChatGPT和Midjourney功能的Web代理项目,为开发者提供了一个便捷的集成解决方案。本文将详细介绍如何在Ubuntu 22.04系统上使用PM2进程管理器来部署这个项目。
环境准备
在开始部署前,需要确保系统具备以下环境:
- Node.js环境:推荐使用Node.js 19版本
- 包管理工具:使用pnpm作为包管理器
- 进程管理:使用PM2来管理项目进程
详细部署步骤
第一步:基础环境配置
首先需要配置Node.js环境,建议使用nvm(Node Version Manager)来管理Node.js版本:
# 安装nvm
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.1/install.sh | bash
source ~/.bashrc
# 安装Node.js 19
nvm install 19
# 安装pnpm和PM2
npm install -g pnpm pm2
source ~/.bashrc
第二步:获取项目代码
从GitHub仓库克隆项目代码:
git clone https://github.com/Dooy/chatgpt-web-midjourney-proxy.git
cd chatgpt-web-midjourney-proxy/service
mv .env.example .env
第三步:配置项目
项目配置主要涉及.env文件的设置,这是项目运行的关键。必须根据实际需求手动配置该文件中的各项参数,特别是API密钥等敏感信息。
第四步:安装项目依赖
项目分为前端和后端两部分,需要分别安装依赖:
# 安装后端依赖
cd /root/chatgpt-web-midjourney-proxy/service
pnpm install
# 安装前端依赖
cd /root/chatgpt-web-midjourney-proxy
pnpm bootstrap
第五步:启动项目
使用PM2启动项目可以确保进程在后台稳定运行,并且具备自动重启等功能:
# 启动前端服务
cd /root/chatgpt-web-midjourney-proxy
pm2 start pnpm --name "dev-chatgpt-web-midjourney-proxy" -- dev
# 启动后端服务
cd /root/chatgpt-web-midjourney-proxy/service
pm2 start pnpm --name "service-chatgpt-web-midjourney-proxy" -- start
启动完成后,可以通过浏览器访问http://服务器IP:1002/来使用服务。
一键部署脚本
为简化部署过程,可以将上述所有步骤整合为一个一键部署脚本:
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.1/install.sh | bash && \
source ~/.bashrc && \
nvm install 19 && \
npm install -g pnpm && \
source ~/.bashrc && \
npm install -g pm2 && \
git clone https://github.com/Dooy/chatgpt-web-midjourney-proxy.git && \
cd /root/chatgpt-web-midjourney-proxy/service/ && \
mv .env.example .env && \
cd /root/chatgpt-web-midjourney-proxy/service && \
pnpm install && \
cd /root/chatgpt-web-midjourney-proxy && \
pnpm bootstrap && \
cd /root/chatgpt-web-midjourney-proxy/service && \
pm2 start pnpm --name "service-chatgpt-web-midjourney-proxy" -- start && \
cd /root/chatgpt-web-midjourney-proxy && \
pm2 start pnpm --name "dev-chatgpt-web-midjourney-proxy" -- dev
常见问题解决
- 文件无法生成:确保
.env文件配置正确,特别是文件存储相关的配置项 - 服务无法启动:检查PM2日志
pm2 logs查看具体错误信息 - 端口冲突:确认1002端口未被其他服务占用,或修改项目配置使用其他端口
项目维护建议
- 定期使用
pm2 save保存当前进程状态 - 使用
pm2 monit监控服务运行状态 - 项目更新时,先停止服务
pm2 stop all,更新代码后重新启动
通过以上步骤,开发者可以快速部署ChatGPT-Web-Midjourney-Proxy项目,并利用PM2确保服务的稳定运行。这种部署方式特别适合生产环境使用,具备良好的可靠性和可维护性。
登录后查看全文
热门项目推荐
相关项目推荐
GLM-5智谱 AI 正式发布 GLM-5,旨在应对复杂系统工程和长时域智能体任务。Jinja00
GLM-5-w4a8GLM-5-w4a8基于混合专家架构,专为复杂系统工程与长周期智能体任务设计。支持单/多节点部署,适配Atlas 800T A3,采用w4a8量化技术,结合vLLM推理优化,高效平衡性能与精度,助力智能应用开发Jinja00
jiuwenclawJiuwenClaw 是一款基于openJiuwen开发的智能AI Agent,它能够将大语言模型的强大能力,通过你日常使用的各类通讯应用,直接延伸至你的指尖。Python0192- QQwen3.5-397B-A17BQwen3.5 实现了重大飞跃,整合了多模态学习、架构效率、强化学习规模以及全球可访问性等方面的突破性进展,旨在为开发者和企业赋予前所未有的能力与效率。Jinja00
AtomGit城市坐标计划AtomGit 城市坐标计划开启!让开源有坐标,让城市有星火。致力于与城市合伙人共同构建并长期运营一个健康、活跃的本地开发者生态。01
awesome-zig一个关于 Zig 优秀库及资源的协作列表。Makefile00
项目优选
收起
deepin linux kernel
C
27
12
OpenHarmony documentation | OpenHarmony开发者文档
Dockerfile
601
4.04 K
🔥LeetCode solutions in any programming language | 多种编程语言实现 LeetCode、《剑指 Offer(第 2 版)》、《程序员面试金典(第 6 版)》题解
Java
69
21
Ascend Extension for PyTorch
Python
440
531
AscendNPU-IR是基于MLIR(Multi-Level Intermediate Representation)构建的,面向昇腾亲和算子编译时使用的中间表示,提供昇腾完备表达能力,通过编译优化提升昇腾AI处理器计算效率,支持通过生态框架使能昇腾AI处理器与深度调优
C++
112
170
🎉 (RuoYi)官方仓库 基于SpringBoot,Spring Security,JWT,Vue3 & Vite、Element Plus 的前后端分离权限管理系统
Vue
1.46 K
823
本项目是CANN提供的数学类基础计算算子库,实现网络在NPU上加速计算。
C++
921
770
暂无简介
Dart
845
204
React Native鸿蒙化仓库
JavaScript
321
375
openGauss kernel ~ openGauss is an open source relational database management system
C++
174
249