从Jenkins Docker容器旋转Docker/ECS容器

从Jenkins Docker容器旋转Docker/ECS容器,docker,jenkins,jenkins-pipeline,amazon-ecs,Docker,Jenkins,Jenkins Pipeline,Amazon Ecs,我让Jenkins在AWS ECS集群上使用安装程序,该集群只有一个EC2实例 在初始设置之后,我尝试运行来自Jenkins的文档。我看到我得到了“docker:找不到” 我理解这是因为Jenkins Docker容器中没有安装Docker,也没有提供Docker。然而,我有一个基本的问题:是否应该继续在运行的Jenkins Docker容器中安装Docker(将其用作基本映像)。当我四处调查时,我发现了这个和这个 我想遵循这些建议,并尝试将卷/usr/bin/docker和套接字/var/ru

我让Jenkins在AWS ECS集群上使用安装程序,该集群只有一个EC2实例

在初始设置之后,我尝试运行来自Jenkins的文档。我看到我得到了“docker:找不到”

我理解这是因为Jenkins Docker容器中没有安装Docker,也没有提供Docker。然而,我有一个基本的问题:是否应该继续在运行的Jenkins Docker容器中安装Docker(将其用作基本映像)。当我四处调查时,我发现了这个和这个

我想遵循这些建议,并尝试将卷
/usr/bin/docker
和套接字
/var/run/docker.sock
从主机EC2/ECS实例装载到Jenkins容器。在此之后,当我运行
docker version
命令测试安装程序时,我发现linux库问题-
docker:加载共享库时出错:libltdl.so.7:无法打开共享对象文件:没有这样的文件或目录
,这表明安装程序进行得不顺利

以下是我的问题-

  • 基于Docker容器运行Jenkins时,如何运行使用Docker容器的Jenkins管道?我希望能够拉/构建/运行docker容器,例如,运行上面提到的hello world管道示例
  • 我的最终目标是创建两种类型的Jenkins工作,它们可以完成以下任务-

    詹金斯工作类型1

  • 从BitBucket云签出存储库
  • 运行shell脚本为java项目构建docker映像(可能使用maven jib插件)
  • 发布到AWS ECR。(假设可以使用
  • 詹金斯工作类型2

  • 从AWS ECR中提取从作业类型1发布的图像
  • 从映像创建一个容器(它基本上运行java应用程序)
  • 容器本身可以在同一个Jenkins ECR集群上与从属服务器一起运行。但是,从属服务器是否应该在其内部安装docker以从ECR中提取并运行图像
    在大量研究之后提出这些问题,但没有找到答案。感谢您的指导。谢谢。

    我用谷歌搜索了你在帖子中包含的docker错误,发现了

    您必须安装libltdl-dev,才能使一切正常工作

    既然错误是一样的,我建议你试一试。根据帖子,在docker容器中安装libltdl-dev