接续上篇讲述的近期chatgpt访问困难的问题,上篇是基于ubuntu的本地安装。使用起来还是不够快速舒服,并且假如使用的是老版的centos7还要切换操作系统,不方便,因此花了一点时间将warp的proxy封装成了docker,满足一键启动的需求,方便大家一把梭。
官方文档安装文档:
https://developers.cloudflare.com/warp-client/get-started/linux/
Dockerfile详解:
FROM ubuntu:22.10
LABEL mantainer="galtjay<galtjay@foxmail.com>"
#下边这一行主要是完成supervisor和cloudflare-warp的安装
RUN apt update && apt install -y curl gpg supervisor && curl https://pkg.cloudflareclient.com/pubkey.gpg | gpg --yes --dearmor --output /usr/share/keyrings/cloudflare-warp-archive-keyring.gpg && echo "deb [arch=amd64 signed-by=/usr/share/keyrings/cloudflare-warp-archive-keyring.gpg] https://pkg.cloudflareclient.com/ jammy main" | tee /etc/apt/sources.list.d/cloudflare-client.list && apt update && apt install cloudflare-warp -y && apt-get clean
#生成supervisor守护配置文件,原本的warp-svc基于systemd进行管理,docker内部不太好实现,切换成supervisor进行守护。
RUN echo "[program:warp-svc]\ncommand=/bin/bash -c /usr/bin/warp-svc\nautostart=true\nautorestart=true\nstartretries=3\nstderr_logfile=/var/log/warp.log\nstdout_logfile=/var/log/warp.log\n" > /etc/supervisor/conf.d/warp.conf
#生成docker启动脚本,输出日志到控制台。每次启动会自动的完成注册,切换模式。假如各位需要嵌入现有的license,此处自行修改。主要修改warp-cli --accept-tos register这条。
RUN echo "supervisord\nsleep 5\nwarp-cli --accept-tos register\nwarp-cli --accept-tos set-mode proxy\nwarp-cli --accept-tos connect\ntail -f /var/log/warp.log\n" > /init.sh && chmod +x /init.sh
#默认暴露40000端口
EXPOSE "40000/tcp"
CMD ["bash","-c","/init.sh"]
docker build -t warp:v1 ./
docker run -d –name warp –network host warp:v1
本人已经打包了一个版本,信的过可以直接拿去使用:
docker run -d –name warp –network host galtjay/warp:v1
运行后将在本地启动一个40000的proxy端口,将现有的代理的流量进行引入即可。可以临时设置代理检查本地的40000端口是否生效:
export ALL_PROXY=socks5://127.0.0.1:40000
curl ifconfig.me
curl myip.ipip.net
但是,目前即使生效了,你在连接chatgpt的时候,仍然可能出现429的错误,这个是由于目前warp连接的IP处于限流导致的,经过我的测试可以透过不断的切换节点来解决:
docker exec -it warp bash #交互式进入docker内部,执行下边的命令,进行节点的切换。
warp-cli disconnect && sleep 1 &&warp-cli connect
最后让chatgpt帮忙写一个docker-compose.yml:
version: "3.9"
services:
warp:
image: galtjay/warp:v1
network_mode: host

最新补充自动化解决429的方案:
本站点维护了一个每日更新的华语youtuber的排行榜,欢迎点击收藏!
留言
兄弟你上传的镜像删除了吗,搜索不到
没有删除,地址,https://hub.docker.com/repository/docker/galtjay/warp/tags?page=1&ordering=last_updated
请教下这个有办法把socks5代理暴露给公网使用吗,因为梯子在ARM机器上,warp又不支持ARM,另外找了台AMD机器跑WARP,想用XRAY分流下,好像需要搭配wireproxy才能使用?
您提供的镜象我运行了,不过我是在国内服务器上跑的,我的目的并不是访问chatgpt,我只是想要一个代理,但是我发现40000端口并没有起来。我查了一下 warp没有连接成功,warp-svc的日志,一直在报错:… 2023-08-02T10:28:13.271Z DEBUG main_loop: boringtun::noise: Sending handshake_initiation2023-08-02T10:28:13.271Z DEBUG main_loop: warp::warp::happy_eyeballs: Sent handshake initiation to 162.159.192.6:45002023-08-02T10:28:13.271Z DEBUG main_loop: warp::warp::happy_eyeballs: Happy eyeballs to [2606:4700:d0::a29f:c006]:4500 failed: Os { code: 101, kind: NetworkUnreachable, message: “Network is unreachable” }2023-08-02T10:28:15.272Z DEBUG main_loop: warp::warp::happy_eyeballs: Happy eyeballs to 162.159.192.6:4500 failed: Custom { kind: TimedOut, error: “” }2023-08-02T10:28:15.273Z ERROR main_loop: warp::warp::happy_eyeballs: Happy eyeballs error Custom { kind: NotConnected, error: “All Happy Eyeballs checks failed” }2023-08-02T10:28:16.273Z DEBUG main_loop: warp::warp::happy_eyeballs: Attempting Happy Eyeballs to 162.159.192.6:2408 / [2606:4700:d0::a29f:c006]:24082023-08-02T10:28:16.273Z DEBUG main_loop: warp::warp::happy_eyeballs: Start racer 172.25.52.90:55646 —> 162.159.192.6:2408…
补充一下,我在宿主机上也安装过warp, 就能连接上。但同样的方式在docker容器里安装一遍,就死活不行。
整了几天,问chatgpt,给的方案也没有成功。
国内的服务器能够直接连接warp?哪一家厂商?我也想试试看。这样不就起飞了?
老哥,按上面教程操作后,warp 之后的ip一直是国内的 ip,vps是日本的,gpt还是进不去😓
需要在你的vps上安装warp。本机的流量需要走代理。
Architecture 只有amd64 https://pkg.cloudflareclient.com/packages/cloudflare-warp
在m2的mac上跑不起来,想自己打镜像好像也不行,提示找不到 E: Unable to locate package cloudflare-warp
1. https://1111-releases.cloudflareclient.com/mac/Cloudflare_WARP.zip 2. try wireguard 看看good luck 😉
这个。。。
有一个问题 这种是全部走代理 会有大量的CLOSE_WAIT会话 占用内存 能否设置路由 只让openai的流量走转发呢
你可以结合你自己的代理去做规则配置。不同的代理配置方式不一样。我并不想过多的去写翻墙相关的东西,你自己去github看下,很多项目提到了。
老板,docker地址呢?
galtjay/warp:latest 文章里面提到了。请使用host模式启动。