关于自己VPS访问不了openai.com的解决办法

看不懂系列。。有没有小白教程?

直接本地跑这个容器走代理?

是的

感谢分享

那你的代理人人都能访问啦

warp-cli registration license <license id>

license id 就是 token key 吧?

应该是不能
你不想用v2ray的话 可以直接前面nginx代理转到本地的40000端口啊

嗯 嗯 嗯

我还没去细看, 暂时放弃了

很强

有人测过warp-cli 指定ip吗?想使用优选ip替换自动分配的

这个好用,感谢佬。我的 cloudcone VPS原来跑不了 lanqian528/chat2api,用了这个居然跑起来了!整合了 lanqian528/chat2api 和 TunMax/canal) 的 docker-compose.yml 放这里。

docker-compose.yml

version: ‘3’

services:
chat2api:
image: lanqian528/chat2api:latest
container_name: chat2api
restart: unless-stopped
ports:
- ‘3007:5005’
volumes:
- ./data:/app/data # 挂载一些需要保存的数据
environment:
- TZ=Asia/Shanghai # 设置时区
- ARKOSE_TOKEN_URL=http://arkose:5006/token # 已内置,不要改动
- PROXY_URL=socks5h://canal:1080
- EXPORT_PROXY_URL=socks5h://canal:1080

arkose:
image: lanqian528/funcaptcha_solver:latest
container_name: funcaptcha_solver
restart: unless-stopped
ports:
- ‘5006:5006’
environment:
- TZ=Asia/Shanghai

canal:
image: Package canal · GitHub
container_name: canal
restart: unless-stopped
ports:
- ‘1080:1080’
environment:
- TZ=Asia/Shanghai
- SOCKS5_MODE=true
- WARP_LICENSE=9n7D3w1Q-58HxI07E-6S04IPG3
# command:
# sh -c “yes | warp-cli registration license $WARP_LICENSE”

[退进空格全没了,放一个拷贝放这里 pastebin.ubuntu.com – 喔趣, WARP_LICENSE 也贴了,算了,反正是TG上拿的。]

但docker-compose-yml 里加最后两行

    command:
      sh -c "yes | warp-cli registration license $WARP_LICENSE"

canal docker 就跑不起来。只能按照 canal repo 说的手动启动(实测并不需要重启canal docker):

docker exec -it canal bash

# 设置 WARP+ 的 license
warp-cli registration license <license id>

有没热佬知道怎么在 docker-compose.yml 直接运行这个 warp-cli registration license ?

1 个赞

佬,用你这个docker-compose.yml之后,访问不了http://127.0.0.1:5005了。焯 :joy:

试试 3007 或者改yml里的3007
为5005:

ports:
  # - ‘3007:5005’
  - ‘5005:5005’

因为我的薅gpt的docker和原生服务都在3000+上跑 :grinning:

不过发现这个 canal 好像不太稳定,跑一阵后就要重启才能用。

  warp:
    image: caomingjun/warp
    container_name: warp
    restart: unless-stopped
    ports:
      - '1080:1080'
    environment:
      - WARP_SLEEP=2
      - WARP_LICENSE_KEY=<YOUR_LICENSE_KEY>  # optional
    cap_add:
      - NET_ADMIN
    sysctls:
      - net.ipv6.conf.all.disable_ipv6=0
      - net.ipv4.conf.all.src_valid_mark=1
    volumes:
      - ./data:/var/lib/cloudflare-warp

找了个canal的替代: warp-docker。docker-compose.yml 里的 "canal:服务"部分换成这个。前面的 canal 自然要换成warp。

亲测 lanqiang/chat2api 可用。也可从宿主机直接测试

curl --socks5-hostname 127.0.0.1:1080 https://cloudflare.com/cdn-cgi/trace
curl --socks5-hostname 127.0.0.1:1080 wtfismyip.com/json

curl  https://android.chat.openai.com/public-api/mobile/server_status/v1
# "cf_details":"Something went wrong. You may be connected to a disallowed ISP. If you are using VPN, try disabling it. Otherwise try a different Wi-Fi network or data connection."}

curl -x socks5h://127.0.0.1:1080  https://android.chat.openai.com/public-api/mobile/server_status/v1
# {"status":"normal","message":null,"button_url":null,"button_title":null}
1 个赞

能出个小白版教程吗? :sweat_smile:

爱你 我的佬 我去试试水

docker-compose.yml
version: '3'

services:
  chat2api:
    image: lanqian528/chat2api:latest
    container_name: chat2api
    restart: unless-stopped
    ports:
      - '5005:5005'
    volumes:
      - ./data:/app/data # 挂载一些需要保存的数据
    environment:
      - TZ=Asia/Shanghai # 设置时区
      - ARKOSE_TOKEN_URL=http://arkose:5006/token # 已内置,不要改动
      - PROXY_URL=socks5h://warp:1080
      - EXPORT_PROXY_URL=socks5h://warp:1080

  arkose:
    image: lanqian528/funcaptcha_solver:latest
    container_name: funcaptcha_solver
    restart: unless-stopped
    ports:
      - '5006:5006'
    environment:
      - TZ=Asia/Shanghai

  warp:
    image: caomingjun/warp
    container_name: warp
    restart: unless-stopped
    ports:
      - '1080:1080'
    environment:
      - WARP_SLEEP=2
      # - WARP_LICENSE_KEY=<到warpplus或warpbot电报群去KEY填这里然后去掉注释#>
    cap_add:
      - NET_ADMIN
    sysctls:
      - net.ipv6.conf.all.disable_ipv6=0
      - net.ipv4.conf.all.src_valid_mark=1
    volumes:
      - ./data:/var/lib/cloudflare-warp

在ubuntu里(其他linux大同小异,windows里没试过)将上面的docker-compose.yml 拷到一个名为 docker-compose.yml 的文件里。登录vps, 命令行下

  1. mkdir ~/chat2api && cd ~/chat2api
    自然可以叫别的名字,但最好另开一个目录,因为好像chat2api需使用 data 目录
  2. 将上面的 docker-compose.yml 拷到当前目录(~/chat2api)
  3. 运行
         docker compose up -d

完毕

几点注意:

  1. 机器里自然需要先安装 docker(最新的docker已经带compose了好像)。有的机器可能是 docker-compose up -d (带杠的)
  2. 运行 docker compose up -d 前要保证端口 5005、5006、1080未被占用,例如,运行以下命令时输出为空。也可用netstat,curl什么的。或是改成别的端口,例如5005被占3007空闲,5005:5005 就改成 3007:5005
        ss -plan | grep -E ":(1080|5005|5006)"
  1. 我未试过 docker-compose.yml 里注释掉这一行
     # - WARP_LICENSE_KEY=<到warpplus或warpbot电报群去KEY填这里然后去掉注释#>

但warp-docker repo 文档及样本docker-compose.yml 说可以注释掉。WARP_LICENSE_KEY可以到电报群去取或自己生成。上面的佬提过一电报群,电报群里搜warp可找到生成KEY的机器人。

  1. 可以用 docker logs docker-name -f 查看chat2api, arkose, warp 的日志,例如
docker logs chat2api -f 

看看能跑起来不,祝好运 :grinning:

2 个赞

都在一个docker-compose.yml里面总感觉不好,分出来不好吗.

1 个赞

非常感谢!!