6

游戏加速器配置容器化(all-in-one)|udp2raw+udpspeeder+kcptun+shadowsocks

 1 year ago
source link: https://vpsxb.net/4169/
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

游戏加速器配置容器化(all-in-one)|udp2raw+udpspeeder+kcptun+shadowsocks | VPS小白

> 实用教程 > 游戏加速器配置容器化(all-in-one)|udp2raw+udpspeeder+kcptun+shadowsocks
202206191902179.png

我把udp2raw/udpspeeder/kcptun/shadowsocks都塞到了一个docker镜像里面,方便自己日常部署和使用,毕竟每次换服务器都要重新搭建一遍属实有点麻烦。

这个docker镜像目前比较简陋,只支持设置各个工具的密码,端口号什么的都是写死的。但我也不打算再增加新的功能了,因为就我自己用,我需求很简单,能跑起来就行。

all-in-one?all-in-boom!如果需要手动搭建可看这篇文章

准备目录:

mkdir -p /opt/docker-game-speed && cd /opt/docker-game-speed

新建Dockerfile:

nano Dockerfile

写入如下内容:



  1. FROM debian:bullseye-slim
  2. ARG SHADOWSOCKS_VERSION=v1.15.3
  3. ARG KCPTUN_VERSION=20230214
  4. ARG UDP2RAW_VERSION=20230206.0
  5. ARG UDPSPEEDER_VERSION=20230206.0
  6. WORKDIR /app
  7. RUN set -ex \
  8. && apt update \
  9. && apt install -y --no-install-recommends ca-certificates curl xz-utils iptables supervisor \
  10. && rm -rf /var/lib/apt/lists/* \
  11. && curl -L https://github.com/shadowsocks/shadowsocks-rust/releases/download/${SHADOWSOCKS_VERSION}/shadowsocks-${SHADOWSOCKS_VERSION}.x86_64-unknown-linux-gnu.tar.xz -o shadowsocks-${SHADOWSOCKS_VERSION}.tar.xz \
  12. && curl -L https://github.com/xtaci/kcptun/releases/download/v${KCPTUN_VERSION}/kcptun-linux-amd64-${KCPTUN_VERSION}.tar.gz -o kcptun-${KCPTUN_VERSION}.tar.gz \
  13. && curl -L https://github.com/wangyu-/udp2raw/releases/download/${UDP2RAW_VERSION}/udp2raw_binaries.tar.gz -o udp2raw_binaries.tar.gz \
  14. && curl -L https://github.com/wangyu-/UDPspeeder/releases/download/${UDPSPEEDER_VERSION}/speederv2_binaries.tar.gz -o speederv2_binaries.tar.gz \
  15. && tar -xvf shadowsocks-${SHADOWSOCKS_VERSION}.tar.xz ssserver \
  16. && tar -xzvf kcptun-${KCPTUN_VERSION}.tar.gz server_linux_amd64 \
  17. && tar -xzvf udp2raw_binaries.tar.gz udp2raw_amd64 \
  18. && tar -xzvf speederv2_binaries.tar.gz speederv2_amd64 \
  19. && rm -rf shadowsocks-${SHADOWSOCKS_VERSION}.tar.xz \
  20. && rm -rf kcptun-${KCPTUN_VERSION}.tar.gz \
  21. && rm -rf udp2raw_binaries.tar.gz \
  22. && rm -rf speederv2_binaries.tar.gz
  23. COPY shadowsocks.json /app/shadowsocks.json
  24. COPY kcptun.json /app/kcptun.json
  25. COPY supervisord.conf /etc/supervisor/conf.d/supervisord.conf
  26. COPY docker-entrypoint.sh /app/docker-entrypoint.sh
  27. EXPOSE 50000 50001 60000 60001 60002
  28. ENTRYPOINT ["/app/docker-entrypoint.sh"]
  29. CMD ["/usr/bin/supervisord"]

新建compose:

nano docker-compose.yml

写入如下内容:



  1. version: '3.8'
  2. services:
  3. all-in-one:
  4. build: .
  5. container_name: game
  6. restart: unless-stopped
  7. network_mode: "host"
  8. cap_add:
  9. - NET_ADMIN
  10. environment:
  11. - SHADOWSOCKS_PASSWORD=password
  12. - KCPTUN_PASSWORD=password
  13. - UDPSPEEDER_PASSWORD=password
  14. - UDP2RAW_PASSWORD=password

新建docker入口点脚本文件:

nano docker-entrypoint.sh

写入如下内容:



  1. #!/bin/sh
  2. if [ $SHADOWSOCKS_PASSWORD ];then
  3. sed -i "s#shad0ws0cksp4ssw0rd#$SHADOWSOCKS_PASSWORD#g" /app/shadowsocks.json
  4. echo "shadowsocks default password: shad0ws0cksp4ssw0rd"
  5. if [ $KCPTUN_PASSWORD ];then
  6. sed -i "s#kcptunp4ssw0rd#$KCPTUN_PASSWORD#g" /app/kcptun.json
  7. echo "kcptun default password: kcptunp4ssw0rd"
  8. if [ $UDPSPEEDER_PASSWORD ];then
  9. sed -i "s#udpspeederp4ssw0rd#$UDPSPEEDER_PASSWORD#g" /etc/supervisor/conf.d/supervisord.conf
  10. echo "udpspeeder default password: udpspeederp4ssw0rd"
  11. if [ $UDP2RAW_PASSWORD ];then
  12. sed -i "s#udp2rawp4ssw0rd#$UDP2RAW_PASSWORD#g" /etc/supervisor/conf.d/supervisord.conf
  13. echo "udp2raw default password: udp2rawp4ssw0rd"
  14. exec "$@"

给执行权限:

chmod +x docker-entrypoint.sh

新建kcptun配置文件:

nano kcptun.json

写入如下配置:



  1. "listen": ":60001",
  2. "target": "127.0.0.1:60002",
  3. "key": "kcptunp4ssw0rd",
  4. "crypt": "salsa20",
  5. "mode": "fast3",
  6. "mtu": 1350,
  7. "sndwnd": 2048,
  8. "rcvwnd": 2048,
  9. "datashard": 2,
  10. "parityshard": 2,
  11. "dscp": 46,
  12. "nocomp": true

新建shadowsocks配置文件:

nano shadowsocks.json

写入如下配置:



  1. "server": "0.0.0.0",
  2. "server_port": 60002,
  3. "password": "shad0ws0cksp4ssw0rd",
  4. "method": "aes-256-gcm",
  5. "mode": "tcp_and_udp"

新建supervisor配置文件:

nano supervisord.conf

写入如下配置:



  1. [supervisord]
  2. nodaemon=true
  3. [program:udp2raw-kcptun]
  4. command=/app/udp2raw_amd64 -s -l 0.0.0.0:60000 -r 127.0.0.1:60001 --raw-mode icmp --cipher-mode none -a -k "udp2rawp4ssw0rd"
  5. stdout_logfile=/dev/stdout
  6. stdout_logfile_maxbytes=0
  7. [program:kcptun]
  8. command=/app/server_linux_amd64 -c /app/kcptun.json
  9. stdout_logfile=/dev/stdout
  10. stdout_logfile_maxbytes=0
  11. redirect_stderr=true
  12. [program:udp2raw-udpspeeder]
  13. command=/app/udp2raw_amd64 -s -l 0.0.0.0:50000 -r 127.0.0.1:50001 --raw-mode icmp --cipher-mode none -a -k "udp2rawp4ssw0rd"
  14. stdout_logfile=/dev/stdout
  15. stdout_logfile_maxbytes=0
  16. [program:udpspeeder]
  17. command=/app/speederv2_amd64 -s -l 0.0.0.0:50001 -r 127.0.0.1:60002 -f 2:4 -k "udpspeederp4ssw0rd"
  18. stdout_logfile=/dev/stdout
  19. stdout_logfile_maxbytes=0
  20. [program:shadowsocks]
  21. command=/app/ssserver -c /app/shadowsocks.json
  22. stdout_logfile=/dev/stdout
  23. stdout_logfile_maxbytes=0
  24. redirect_stderr=true

构建镜像:

docker compose build
docker compose up -d
.\udp2raw_mp_nolibnet.exe -c -l 0.0.0.0:60000 -r VPSIP:60000 --raw-mode icmp --cipher-mode none -k "udp2rawp4ssw0rd"
.\udp2raw_mp_nolibnet.exe -c -l 0.0.0.0:50000 -r VPSIP:50000 --raw-mode icmp --cipher-mode none -k "udp2rawp4ssw0rd"
.\client_windows_amd64.exe -l :12345 -r 127.0.0.1:60000 -key "kcptunp4ssw0rd" -crypt salsa20 -nocomp -datashard 2 -parityshard 2 -mtu 1350 -sndwnd 512 -rcvwnd 2048 -dscp 46 -mode fast3
.\speederv2_wepoll.exe -c -l 0.0.0.0:12345 -r 127.0.0.1:50000 -f 2:4 -k "udpspeederp4ssw0rd"

netch配置ss连接本地的12345端口:

PpKfebq.png

https://lala.im/8634.html


VPS小白 , 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权
转载请注明原文链接

About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK