Ema*_*aei 6 linux proxy tor docker
我想通过本地计算机上的 Tor 代理从 docker 容器内部 ping 一个网站。如果没有设置代理,我无法 ping 通。当我运行容器时:
sudo docker run --rm -it -p9150:9150 my-container
我收到以下错误:
Error starting userland proxy: listen tcp 0.0.0.0:9150: bind: address already in use.
我在 localhost:9150 上启动了 tor-browser,但在运行容器时无法进行端口转发。我也不想--net=host
在命令中使用。我添加了以下行
Environment="ALL_PROXY=socks5://127.0.0.1:9150"
,/lib/systemd/system/docker.service
但没有字。任何人都可以帮我解决这个问题吗?(操作系统:Ubuntu 20.04)
经过长时间的研究,我采取了以下步骤:
在 myapp 中,我有一个 python 脚本,它通过 torocks 代理将消息发送到我的电报频道。我有一个网络(tor),两个容器通过它互相看到。在 python 脚本中我有以下行:
bot = telegram.Bot(token=token, request=Request(con_pool_size=10, connect_timeout=40, proxy_url='socks5h://mytor:9050'))
Run Code Online (Sandbox Code Playgroud)
运行另一个容器,一个通用容器,例如
docker run --rm -it --network tor ubuntu:22.04
Run Code Online (Sandbox Code Playgroud)
按照通常的方式安装curl
(例如apt-get
在 debian/ubuntu 中)。
然后在命令行中执行:
curl -x socks5://mytor:9050 http://checkip.amazonaws.com/
Run Code Online (Sandbox Code Playgroud)
您将看到 TOR 出口节点的 IP: