在docker容器之外运行脚本

时间:2016-10-08 01:38:50

标签: docker autodeploy

我试图进行自动部署,所以......

我有一个.sh脚本来自动提取泊坞窗图像,例如:

docker pull mongo
docker stop db
docker rm db
docker run --name db -d mongo

我正在等待POST请求启动它。

所以我有一个容器(带有nginx)作为服务器。但我必须在容器外调用该脚本,因为它可以更新任何容器。

这可能吗?如果是这样,怎么样?

1 个答案:

答案 0 :(得分:0)

听起来我正在寻找Docker UNIX套接字。请参阅一些解释here(最好向下滚动到该页面的“解决方案”部分。 基本上,您将使用已安装的UNIX套接字启动Nginx容器。这允许您在其他兄弟容器上使用来自内部 Nginx容器中的docker命令。

重要安全说明:

使用UNIX套接字是一个明确的安全问题,尤其是当您将其暴露给全球网络时。请参阅[1][2]。其他替代方案可能包括使用Docker-in-Docker,但我不确定这适合您的情况。 Docker确实发布了关于如何保护UNIX套接字here的博客文章,如果这是您想要的路径。