From b9ea58711fad7289d1e8988d3339d93d746128e5 Mon Sep 17 00:00:00 2001 From: erjemin Date: Sun, 30 Aug 2026 15:28:19 +0300 Subject: [PATCH] =?UTF-8?q?monir:=20=D1=81=D1=8A=D0=B5=D1=85=D0=B0=D0=BB?= =?UTF-8?q?=D0=B8=20=D0=BA=D0=B0=D1=80=D1=82=D0=B8=D0=BD=D0=BA=D0=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...container-via-shadowsocks-and-tun2socks.md | 104 +++++++++++++++++- 1 file changed, 103 insertions(+), 1 deletion(-) diff --git a/docker/docker-proxy-container-via-shadowsocks-and-tun2socks.md b/docker/docker-proxy-container-via-shadowsocks-and-tun2socks.md index 281af1a..6b0f336 100644 --- a/docker/docker-proxy-container-via-shadowsocks-and-tun2socks.md +++ b/docker/docker-proxy-container-via-shadowsocks-and-tun2socks.md @@ -149,11 +149,14 @@ services: # [2] tun2socks — прозрачный прокси для Audiobookshelf, форвардит через ss-ru tun2socks: - image: xjasonlyu/tun2socks + # image: ghcr.io/xjasonlyu/tun2socks:v2.5.2 + image: ghcr.io/xjasonlyu/tun2socks:v2.4.1 + # image: xjasonlyu/tun2socks container_name: tun2socks restart: unless-stopped cap_add: - NET_ADMIN + # - NET_RAW devices: - /dev/net/tun ports: @@ -320,3 +323,102 @@ Audiobookshelf использует библиотеку axios. А он: В результате: часть запросов проходит, часть падает, RSS может читаться, но mp3 не скачиваются и так далее. Опытным путем я определил, что наиболее надёжный способ — сетевой туннель (`tun2socks`), при котором приложение не знает о прокси­ровании вообще. + + + +```shell +version: "3.8" + +networks: + ab_net: + driver: bridge + ipam: + driver: default + config: + - subnet: 172.26.0.0/16 + gateway: 172.26.0.1 # Гейтвей обязательно указать + +services: + # [1] Shadowsocks клиент для подключения к Outline/VPS (предоставляет SOCKS5 на порту 1080) + ss-ru: + image: shadowsocks/shadowsocks-libev + container_name: ss-ru + restart: always + networks: + ab_net: + ipv4_address: 172.26.0.10 + volumes: + - ./resolv.conf:/etc/resolv.conf:ro + dns: + - 1.1.1.1 + - 8.8.8.8 + - 8.8.4.4 + - 77.88.8.8 + - 77.88.8.1 + #command: > + # ss-local + # -s 90.156.206.105 + # -p 13090 + # -k eU2dCMkmzTvdvFcd16yWAM + # -m chacha20-ietf-poly1305 + # -l 1080 + # -b 0.0.0.0 + # Альтернативный VPN (закомментирован) + command: > + ss-local + -s v.tr.cube2.ru + -p 45628 + -k m1EKgae5RarrBLcRaCNp5X + -m chacha20-ietf-poly1305 + -l 1080 + -b 0.0.0.0 + + # [2] Tun2socks — прозрачный TCP -> SOCKS5 через ss-ru + tun2socks: + image: xjasonlyu/tun2socks + container_name: tun2socks + restart: always + cap_add: + - NET_ADMIN + devices: + - /dev/net/tun + networks: + ab_net: + ipv4_address: 172.26.0.11 + ports: + - "8000:80" + # Если хочешь управлять DNS вручную, можешь замонтировать свой resolv.conf + volumes: + - ./resolv.conf:/etc/resolv.conf:ro + dns: + - 1.1.1.1 + - 8.8.8.8 + - 8.8.4.4 + - 77.88.8.8 + - 77.88.8.1 + # Важно: command записан корректно в виде строки или массива + command: > + /tun2socks + -device tun://tun0 + -proxy socks5://172.26.0.10:1080 + depends_on: + - ss-ru + + # [3] Audiobookshelf, использующий tun2socks для доступа к интернету + audiobookshelf: + image: advplyr/audiobookshelf:latest + container_name: audiobookshelf + restart: always + network_mode: "service:tun2socks" # использует сеть tun2socks + volumes: + - /volume1/music/_audio_books:/audiobooks + - /volume1/music/_podcasts:/podcasts + - /volume1/files/e-books:/e-books + - ./config:/config + - ./metadata:/metadata + environment: + - TZ=Europe/Moscow + depends_on: + tun2socks: + condition: service_started +``` \ No newline at end of file