搭建要求

  1. CWS
  2. Ninja
  3. VPS

搭建步骤

创建cws目录

cd ~
mkdir cws && cd cws
mkdir -p data/config

密码写入环境变量

export MONGODB_PASSWORD=password  # MongoDB 密码
export INITIAL_ADMIN_PASSWORD=password  # 初始管理员密码

创建配置文件

创建.env

docker run -it --rm \
  -v $PWD/data/config:/tmp/config \
 ghcr.io/chatpire/chatgpt-web-share:latest \
  python /app/backend/manage.py create_config -O /tmp/config --generate-secrets --mongodb-url "mongodb://cws:${MONGODB_PASSWORD}@mongo:27017" --initial-admin-password "${INITIAL_ADMIN_PASSWORD}" --chatgpt-base-url http://ninja:7999/backend-api/

在cws目录下创建并编辑docker-compose.yml文件

echo "TZ=Asia/Shanghai" > .env
echo "MONGO_INITDB_DATABASE=cws" >> .env
echo "MONGO_INITDB_ROOT_USERNAME=cws" >> .env
echo "MONGO_INITDB_ROOT_PASSWORD=$MONGODB_PASSWORD" >> .env
version: "3"

services:
  chatgpt-web-share:
    image: ghcr.io/chatpire/chatgpt-web-share:latest
    container_name: cws
    restart: unless-stopped
    ports:
      - 5000:80
    volumes:
      - ./data:/app/backend/data
    environment:
      - TZ=${TZ}
      - CWS_CONFIG_DIR=/app/backend/data/config
    depends_on:
      - mongo

  mongo:
    container_name: mongo
    image: mongo:6.0
    restart: always
    # ports:
    #   - 27017:27017
    volumes:
      - ./mongo_data:/data/db
    environment:
      MONGO_INITDB_DATABASE: ${MONGO_INITDB_DATABASE}
      MONGO_INITDB_ROOT_USERNAME: ${MONGO_INITDB_ROOT_USERNAME}
      MONGO_INITDB_ROOT_PASSWORD: ${MONGO_INITDB_ROOT_PASSWORD}

  ninja:
    image: ghcr.io/gngpp/ninja:latest
    container_name: ninja
    restart: unless-stopped
    command: run --arkose-solver-image-dir /root/.ninja
    ports:
      - "7999:7999"
    environment:
      - TZ=Asia/Shanghai
    volumes:
      - "./har:/root/.ninja"

运行容器

docker-compose up -d

其他事项

docker logs  cws  -f

配置ninja

1、获取 HAR 并上传给 Ninja

在控制台打开的情况下,发送一次 GPT-4 会话消息,然后在抓包界面找到 filter (如果你的控制台为中文,则显示为 过滤 ),输入这个地址进行过滤 https://tcr9i.chat.openai.com/fc/gt2/public_key/35536E1E-65B4-4D96-9D97-6ADB7EFF8147
过滤出来的至少会有一条记录,随机选择一条,然后下载这个接口的HAR日志记录文件,具体操作是:右键点击这条记录,然后找到 Save all as HAR with content (如果你的控制台为中文,则显示为 以 HAR 格式保存所有内容 )
如果你使用docker,需要映射~/.ninja工作目录,只支持WebUI上传更新HAR,请求路径:/fingerprint/upload

2、

访问 https://chat.openai.com/api/auth/session 并复制其中的 access token 项内容,在 CWS 的后台设置中的 credentials 中填入