标签 cloud_claude_code 下的文章

鸽了一天了~刚刚下班现在发下教程

彻底优化了项目部署,快速配置降低大量配置难度,但是有部分的操作是无法避免的,还是需要手动接管~

刚刚成型,功能还不够完善,如果后续有什么需要的功能或者修改Bug可以提issuse或者帖子留言会尽量更新的(没办法还要上班只能尽量搞了 ,如果有感兴趣的朋友可以直接fork项目自己改造哦 )

项目地址 :GitHub - qinsehm1128/cloud_claude_code
SEO优化页 :https://ccc.qinshm1128.top

PS:

  • 我用的是宝塔面板,会降低操作难度,大家如果用别的方案可能会麻烦些
  • 暂时没实现https
  • 理论上任何cli都支持,因为我是直接启动了linux完整容器,通过pty监听输出流实现的,只不过监控功能没办法实现,因为我是监听pty子进程里面是否存在claude来确认是否监控的,感兴趣的朋友可以自己加一下这个功能

项目开始准备

  • 需要一个最少4h8g的服务器,当然如果项目很小2h4g也可以
  • 需要两个域名 1.项目访问的主域名 2.用于转发应用端口的泛解析域名,例如 *.code.example.com

1:拉取项目

项目链接:GitHub - qinsehm1128/cloud_claude_code
拉取地址:GitHub - qinsehm1128/cloud_claude_code

2: cd到项目目录,对根目录下的 deploy.sh文件授予777权限并运行

注意,如下操作需要root权限

cd cloud_claude_code/
chmod +x deploy.sh
./deploy.sh

运行之后根据指引进行快速安装即可,env文件会根据指引动态创建,如果有什么问题可以查看项目的deploy.md里面有详细讲解

注意:

  • 前端部署路径,会直接把前端打包的dist文件里面的内容粘贴过去,而不是把dist文件夹粘贴过去

  • 后端部署会将需要的docker,data目录都转移过去,所以需要在创建好的后端项目里面编译docker哦,或者提前手动编译好也行(见3)

  • cors配置,输入字符串 xxx,yyy 使用","进行分割,不需要中括号

  • CODE_SERVER_BASE_DOMAIN(Code-Server 基础域名) 域名配置,例如你的泛解析域名是 *.code.example.com ,填写的时候只需要填写 code.example.com 根路径即可

3: 进入部署目录(在项目初始部署的时候会询问部署目录)里面的docker文件夹,授予build-base.sh文件777权限,然后直接运行

这部分主要是编译预装环境的docker容器,分为两个一个是带code-server的,一个是不带的

4: 配置nginx

  • 进入deploy文件夹,打开nginx.conf文件

  • Traefik 服务的域名是自动分配的,可以在docker中查看映射80端口的域名即可,如果需要仪表盘,可以查看映射9080的端口

  • 这里面是写好的主服务和Traefik服务的nginx配置,只要修改好域名和端口号,直接使用即可,如果有别的需求可以自行实现配置哦

5:关于更新项目

只需要进入项目目录运行如下两条命令即可

  • git pull
  • ./deploy.sh

6:完结!!!

彻底简化流程,通过deploy.sh可以快捷完成繁琐的初始化部署~

使用教程

现在界面只有如下几个部分

1:登录界面不必多少了吧

2:仪表盘界面

  • 核心界面,使用前请先进行如下配置:

    • Settings界面配置好github token(这个教程很多了就不赘述了),该token没有持久化保存避免丢失,请注意找个安全的地方保存好哦
    • cc的base_url和key等相关的环境变量,项目主要是使用环境变量注入的方式将变量注入到容器里来实现cc api替换 (后面会加入cc直登适配)

  • 点击 ** New Container ** 打开容器创建界面,有三个部分要注意

  • 基础配置
    • 1.容器名,不建议使用中文,因为后续的端口转发会用项目拼接泛域名
    • 2.项目部分可以选择自己的项目,或者切换成url模式,填写开源项目的url进行使用
      1. 初始化和code-server配置
      • Skip Claude Code initialization 如果不勾选,会默认拉取项目之后,使用cc对项目进行初始化,为项目安装所需的环境等内容,较耗时,可以勾选跳过项目初始化
      • Enable Web VS Code (code-server) 默认是不使用code-server的,勾选之后则会使用带有code-server的容器启动项目,注意使用code-server会导致占用内存增大,如果是小内存机器要自己斟酌
  • 容器资源配置,字面意思可以配置这个容器可使用的内存数和cpu数
  • 网络映射配置
    • 1.如果勾选 Enable Traefik Proxy ,则会使用Traefik分配代理端口
    • 2.如果不勾选则会直接开放容器端口映射到服务器端口
  • terminal界面介绍
    • 1.中间部分为基础的terminal交互部分
    • 2.点击 File出现文件界面,可以上传下载文件等操作,支持拖拽文件到终端界面,自动转换为文件路径填写到光标处(cc对话同样试用)
    • 3.下面的开启监控按钮点击口可以开启项目监控,但是请注意,因为后端检测pty子进程是否存在cc启用监控,如果不是在cc界面中使用是不会有任何作用的哦
    • 4.右侧的任务列表,可以填写任务,当开启监控并且监听模式选择Queue模式或者AI模式时才能像cc客户端注入哦
    • 5.监听逻辑是:当x时间内终端没有任何输出,则会判断是否是cc进程,如果是cc进程则根据设置进行处理,如果设置内容缺失或者任务列表为空,会跳过执行,但是监控不会中断
    • 6.完全后端实现监控和消息分发,所以即使前端关闭存在CC的对话窗口也不会销毁,要注意如果是普通的终端窗口,超过30分钟后端自动销毁
    • 7.断线重连(退出在进入窗口)的实现逻辑是将pty暂存区的输出刷入sql,并且会永久保存(只要不关闭这个终端),每次进入时会分块加载并且拼接当前暂存区的内容,组成完整的会话,加载需要时间可以耐心等待

最!最!最!最!最!最!重要的一点,开始监控的时候千万不要使用code-server,这个终端和code-server会冲突,请关闭监控后再进入code-server,我是想编写vscode插件进行控制的,但是因为没开发经验所以失败了


3:端口界面

  • 展示已经映射出的端口,如果是使用code-server的容器,启动时自带映射url,点击右侧跳转可以直接打开code-server界面

4:docker管理界面

  • 可以查看当前服务器上的所有docker,可以通过按钮进行控制容器启停或删除

📌 转载信息
转载时间:
2026/1/5 21:40:15