监控Docker容器内运行的PostgreSQL的正确方法
我正在用CentOS 7 + PostgreSQL 9.4运行docker容器。 使用这个泊坞窗图像 。
所以,在拉取图像之后,我已经按照说明创build了容器,并且公开了PostgreSQL端口5432。
当然,我可以在我的容器中执行一个shell,通过这样做
docker exec -it CONTAINER_NAME /bin/bash
之后,我以postgres用户身份login。 但我需要安装更多的软件 (基本上,postgres相关的东西,或一些命令行工具)。
编辑:例如,我需要安装lsof工具(在CentOS 7中默认不可用,可以用yum install lsof来安装)。
所以, 我需要一个不同的用户,能够安装软件 。 除非…
我没有做正确的事情,我真正需要的是另一个容器来监视PostgreSQL 。 甚至使用我的主机 (Mac OS X)。 但是,然后… 我怎么能使用像LSOF或HOPT命令 ? 我需要在同一个运行PostgreSQL的容器中。
我对吗?
好的,那很简单
docker exec -it -u root CONTAINER_NAME /bin/bash -c "yum install lsof"