连接到主机守护进程的 Docker 容器

连接到主机守护进程的 Docker 容器

我想在主机上运行守护进程并让容器连接到它。我在想我将主机上的守护进程绑定到127.0.0.1,然后让某些东西(委托?或者 iptables 就足够了?)将数据包从 IP 转发docker0到守护进程。所以问题是

  1. 当 docker 守护进程启动时如何启动某些东西
  2. 那是什么东西?

我在 Debian 7 上。

以下问题似乎相关,但据我所知并不是答案:

  1. 从 docker 容器连接到 docker 主机
  2. https://stackoverflow.com/questions/25413954/how-to-setup-docker-to-talk-to-non-dockerized-service-on-same-host
  3. https://stackoverflow.com/questions/24319662/from-inside-of-a-docker-container-how-do-i-connect-to-the-localhost-of-the-mach

答案1

我发现的是——大多数守护进程都能够使用 Unix 套接字,你可以使用 将主机上的套接字挂载到容器中-v。一切皆文件这一古老技巧非常方便。例如docker run -v /var/run/mysqld/mysqld.sock:/tmp/mysql.sock。在容器内,你将连接到/tmp/mysql.sock。同样的技巧也适用于挂载包含套接字的目录——这可用于在 docker 中运行 X Windows 应用程序而无需 SSH 转发:只需执行-v /tmp/.X11-unix:/tmp/.X11-unix

相关内容