gpt4 book ai didi

amazon-web-services - AWS-CDK 和 Gitlab 返回错误 : spawnSync docker ENOENT

转载 作者:行者123 更新时间:2023-12-05 01:50:26 28 4
gpt4 key购买 nike

我正在尝试运行通过 cdk-synth 命令构建 AWS-CDK 项目的 Gitlab 管道。关于我应该在 Gitlab runner 中使用哪些图像,我遵循了在线建议,但我遇到了以下错误:

Error: spawnSync docker ENOENT

我不确定这个错误的确切含义,我猜它正在尝试启动 docker(由 cdk synth 命令使用)但未能启动。同样,我在网上找到的所有建议都建议使用我目前拥有的设置:

image: node:16.3.0-alpine

stages:
- build
- test
- .post

cache:
key: ${CI_COMMIT_REF_SLUG}
paths:
- .npm
- node_modules

build:
tags:
- mytag
environment: ${CI_COMMIT_BRANCH}
stage: build
script:
- npm i
- cdk synth --no-staging > template.yaml
artifacts:
paths:
- cdk.out
expire_in: 30 mins

我真的迷失了这个,它可能正对着我的脸盯着我看,但是有人能给我指出正确的方向吗,为什么当我使用的图像本身时我会收到这个错误 docker 容器?

最佳答案

经过 10 天左右的时间在 docker 等内部摆弄 docker 之后......以及基于针对同一问题的其他解决方案的大量试验和错误,例如 this

我得出了以下解决方案。

如果您使用 NodejsFunction,您似乎需要在您的 gitlab-ci 模板 (before_script/script) 中包含以下内容功能:

- apk 添加 bash(来源:here)

- npm i -g esbuild

esbuild在将基于 JavaScript 的 lambda 函数代码及其依赖项打包到单个文件中时使用。这是对我有用的:

cdk_synth:
image: node:16-alpine
stage: validate
before_script:
- apk add bash
- npm i -g esbuild
- npm install
- npm i -g aws-cdk
- npm i -g aws-cdk-lib
script:
- cdk bootstrap aws://$AWS_ACCOUNT_ID/$AWS_REGION
- cdk synth

关于amazon-web-services - AWS-CDK 和 Gitlab 返回错误 : spawnSync docker ENOENT,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/73107862/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com