如何将 docker tcp api 公开到私有容器网络?

如何将 docker tcp api 公开到私有容器网络?

我希望我的一个容器能够控制docker本身,我目前的做法是简单地在内部公开套接字,但我不喜欢这样。我真正想做的是通过经过身份验证的tcp进行操作。我不确定的是如何将docker tcp套接字(在一致的IP或域上)仅公开给内部私有网络。

我如何将docker作为服务暴露给我的容器?

答案1

Docker 的套接字没有身份验证。任何可以访问套接字的人都可以控制所有容器,并且可以有效地脱离容器并成为容器主机上的 root 权限(如果未使用 SELinux)。

首先,如果您决定这样做,请务必小心,确保您只运行受信任的代码。

其次,忘掉 TCP;只需将 Docker 套接字绑定到容器即可。这样,只有该特定容器才能访问 Docker。

docker run -v /run/docker.sock:/run/docker.sock privileged_container

相关内容