docker-compose - AWS Build Project 服务 docker-compose 构建命令不起作用

标签 docker-compose aws-code-deploy aws-codepipeline aws-codebuild

我想构建 docker 镜像并推送到 ECR,因为我在 buildspect.yml 文件下面编写了该镜像,并使用 AWS 构建项目服务构建我的项目。 我的 buildspec.yml 文件如下:

version: 0.2
 


phases:
  install:
    runtime-versions:
      docker: 18
    commands: 
      - nohup /usr/local/bin/dockerd --host=unix:///var/run/docker.sock --host=tcp://localhost:2375 --storage-driver=overlay2&
      - timeout 15 sh -c "until docker info; do echo .; sleep 1; done"
  pre_build:
   commands:
     - $(aws ecr get-login --no-include-email --region ${AWS_DEFAULT_REGION})
     - REPOSITORY_URI_SERVER=<accountnumber>.dkr.ecr.${AWS_DEFAULT_REGION}.amazonaws.com/${IMAGE_NAME}
  build:
    commands:
     - docker-compose build
  post_build:
    commands:
     - docker-compose push
    

当我使用 AWS 构建项目服务进行构建时,我会收到如下错误:

ERROR: Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?
errors pretty printing info
[Container] 2020/07/10 01:57:15 Command did not exit successfully timeout 15 sh -c "until docker info; do echo .; sleep 1; done" exit status 124
[Container] 2020/07/10 01:57:15 Phase complete: INSTALL State: FAILED
[Container] 2020/07/10 01:57:15 Phase context status code: COMMAND_EXECUTION_ERROR Message: Error while executing command: timeout 15 sh -c "until docker info; do echo .; sleep 1; done". Reason: exit status 124

最佳答案

我尝试编写 buildspec.yml 文件,如下所示 我在我的文件中添加了一个工件标记,该标记是我的项目构建的存储位置。

  post_build:
    commands:
     - docker-compose push
     - printf '[{"name":"<name of container>","imageUri":"<path of your image"}]'   > imagedefinitions.json
     - cat imagedefinitions.json
   artifacts:
     files: imagedefinitions.json

我成功了。

关于docker-compose - AWS Build Project 服务 docker-compose 构建命令不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62826382/

相关文章:

javascript - 提高 Angular 应用程序的 Docker 构建速度

docker - Docker Compose-MYSQL和WORDPRESS:MySQL连接错误:

docker - golang 程序在 docker 之外运行良好,但在 dockerized 时以 0 退出

aws-lambda - 将多个 lambda 函数从单个 github 存储库部署到 AWS 的最佳方法是什么?

aws-lambda - 为什么只有某些部署目标才会出现错误 "Code uncompressed size is greater than max allowed size of 272629760"?

amazon-ecs - 代码管道 : ECR source + ECS deploy configuration

laravel - 组地址 : invalid group ID 'laradock' error when running docker-compose up

powershell - AWS CodeDeploy Powershell 脚本无法在 IIS 服务器中创建网站和池

amazon-s3 - 使用 CICD 管道的 cloudform 导入现有资源时 S3 访问被拒绝

java - 在 CodeDeploy 中访问 CodeBuild 运行时