如何使用docker在同一个域上为每个用户创建linux映像

时间:2016-07-13 21:37:13

标签: networking docker docker-networking

以下是我希望能够做到的事情(我甚至不确定在网上寻找什么文件)。

docker run --name userXXX -d ubuntu
docker run --name userYYY -d ubuntu
docker run --name userZZZ -d ubuntu

这样我就可以将root登录分发给一个容器@a域。像:

  

ssh root@userXXX.somedomain.foo

     

ssh root@userYYY.somedomain.foo

     

ssh root@userZZZ.somedomain.foo

这甚至可能吗?我想我需要在

上设置DNS
  

somedomain.foo

并将所有主机放在同一个docker网络上(这似乎足够合乎逻辑)。我似乎无法弄清楚的问题是hostname.somedomain.foo =>的正确路由。泊坞容器

每个容器都需要它自己的IP 注册使用该主机/ IP更新DNS记录 DNS需要是somedomain.foo的DNS权限之一,我的真实网络上的所有机器都知道。

有没有人做过这种事情?

如果这个问题更适合超级用户,请告诉我,我可以移动它

1 个答案:

答案 0 :(得分:1)

好像你可以在一个容器中使用OpenSSH代理并使用它来路由到用户的容器。您可以编写代理配置脚本,以便在添加用户时添加条目。

来自:https://superuser.com/questions/960666/route-ssh-traffic-based-on-domain-with-haproxy

Host  *.internal.lan
   ProxyCommand ssh -q -A  -x proxy.example.com -W %h:%p
     

现在,如果您连接到主机行中列出的名称,您的SSH   客户端将首先连接到proxy.example.com(必须指向   您的公共IP地址)并将其用作转发到的网关   实际机器...

另见:SSH ProxyCommand example: Going through one host to reach another server