Нашёл совершенно прекрасный вариант amnesia-wg
Одинокий бинарь, который поднимает socks proxy и коннектится к подложенному конфигу. Аналогично bdpi вообще ни от чего не зависит, можно собрать в контейнер, содержащий только его
Сборочный скрипт:
#!/bin/bash
DISTR_WIREPROXY_AWG="https://github.com/artem-russkikh/wireproxy-awg/releases/latest/download/wireproxy_linux_arm64.tar.gz"
rm wireproxy
echo > awg.conf
wget $DISTR_WIREPROXY_AWG -O - | tar -xzf -
chmod +x wireproxy
if [ -e wireproxy ]; then
echo "AWG OK"
else
echo "Unable to prepare AWG. Exiting"
exit 0
fi
echo 'FROM scratch
COPY wireproxy awg.conf /
ENTRYPOINT ["/wireproxy -c /awg.conf"]' > Dockerfile
docker build --rm -t wireproxy_awg .
docker save wireproxy_awg:latest -o wireproxy_awg.tar
docker image rm wireproxy_awg:latest
В некротике нужно прописать будет руками entrypoint, сам не подхватывает
(а энтрипоинт соотв /wireproxy -c /awg.conf)
В конфиге можно прописывать значения через переменные окружения, напр. можно передавать эндпоинт того же WARP-а, а потом перебирать их скриптом, если совсем будет затыкаться.
Есть ливнес пробы и метрики, есть почти нормальные логи, короче мне нравится
UPD
Если вдруг кто-то себе настраивал xray-core как траспорт из wireguard во VLESS и прочие протоколы(когда на входе поднимается wireguard inbound и правилами маршрутизации заворачивается в соответствующий outbound) - не обновляйтесь на последнюю версию.
Они сломали маршрутизацию по тегам для wireguard инбаундов