Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/opencv/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在docker内部运行docker以避免安装多个依赖项_Docker - Fatal编程技术网

在docker内部运行docker以避免安装多个依赖项

在docker内部运行docker以避免安装多个依赖项,docker,Docker,我面临着一个困境,我想在这里讨论这个困境,展开一场建设性的讨论 我的用例非常简单: 我需要运行一个bash脚本,它执行几个命令,如installnpm、executeawscli和querypostgresql。对于最后一个任务,我使用psql。简单的任务,我会说,然而,Docker稍微复杂化的情况 如果我创建一个映像,在其中安装所有依赖项,问题就会得到解决。然而,结果将是一个相当大的形象,我不同意这个解决方案 如何使用一个Docker映像运行脚本,然后从脚本(Docker内部)运行以下内容 d

我面临着一个困境,我想在这里讨论这个困境,展开一场建设性的讨论

我的用例非常简单:

我需要运行一个bash脚本,它执行几个命令,如install
npm
、execute
awscli
和querypostgresql。对于最后一个任务,我使用
psql
。简单的任务,我会说,然而,Docker稍微复杂化的情况

如果我创建一个映像,在其中安装所有依赖项,问题就会得到解决。然而,结果将是一个相当大的形象,我不同意这个解决方案

如何使用一个Docker映像运行脚本,然后从脚本(Docker内部)运行以下内容

docker run postgres:9.6.3-alpine psql

docker运行节点:9.8 npm


换句话说就是在docker内部运行docker。你觉得怎么样?

如果你想在docker内部执行docker run,只需使用
-v/var/run/docker.sock:/var/run/docker.sock
选项执行第一次docker run


有了这个,您可以在容器中访问在主机或任何地方定义的docker图像。

您可以从阅读这个问题开始:我将继续介绍一些概念,如:
关注点分离
胖图像与瘦图像
,本文提到了我已经阅读过的那篇文章中的一些优点