[更新]
这个错误来自一个构建容器,它包含一个被更改的docker版本。升级那个docker版本解决了这个问题。所以在某种程度上这个gitlab/runner: manifest for moby/buildkit:buildx-stable-1 not found是正确的答案,我们的更新尝试一定是在错误的地方。
问题:
我正在尝试使用jenkins运行docker build并发布到AWS中的弹性容器注册表。在不更改jenkinsfile或dockerfiles的情况下,构建现在开始失败。最后一次成功构建运行于2023年1月26日。
Jenkinsfile:
// ...irrelevant stuff...
def customImage = docker.build("xxxx-builder:latest", "--build-arg BUILDENV=${buildenv} --network=host .")
customImage.inside("-u 0:0 -e HOME='/tmp' --privileged --network=host -v /var/run/docker.sock:/var/run/docker.sock -v /tmp/NuGetScratch/ -v /tmp/.nuget") {
sh "docker system prune -f"
sh "dotnet lambda deploy-function -cfg aws-lambda-tools-${awsservice}.json --aws-access-key-id ${creds[0]} --aws-secret-key ${creds[1]}"
sh "chown -R jenkins-SAWSMGT:jenkins-SAWSMGT ./"
}
Dockerfile:
FROM mcr.microsoft.com/dotnet/sdk:5.0
# Required build arguments
ARG BUILDENV
# Environment variables
ENV BUILDENV ${BUILDENV}
ENV PATH="${PATH}:/tmp/.dotnet/tools"
VOLUME /home/jenkins-SAWSMGT
# Install dependencies
RUN apt update && \
apt install -y \
apt-transport-https \
ca-certificates \
curl \
gnupg2 \
software-properties-common && \
apt-key adv --fetch-keys https://download.docker.com/linux/debian/gpg && \
add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/debian buster stable" && \
apt update && \
apt install -y zip docker-ce docker-ce-cli containerd.io && \
rm -rf /var/lib/apt/lists/* && \
apt clean && \
apt autoremove -y
# Change user
RUN groupadd -r -g 1015 jenkins-SAWSMGT
RUN useradd -r -u 1014 -g jenkins-SAWSMGT jenkins-SAWSMGT
USER root
# Install AWS Lambda Toolkit
ENV HOME="/tmp"
RUN dotnet tool install -g Amazon.Lambda.Tools
Dockerfile2:
FROM public.ecr.aws/lambda/dotnet:5.0
WORKDIR /var/task
COPY "bin/Release/net5.0/linux-x64/publish" .
RUN yum install -y amazon-linux-extras
RUN amazon-linux-extras install epel -y
RUN yum install -y \
libgdiplus \
libjpeg \
rpmdevtools \
wget \
yum-utils
ENV WKHTMLTOPDF_BIN="wkhtmltopdf.rpm"
RUN wget -O $WKHTMLTOPDF_BIN https://github.com/wkhtmltopdf/packaging/releases/download/0.12.6-1/wkhtmltox-0.12.6-1.centos7.$(arch).rpm \
&& yum install -y $WKHTMLTOPDF_BIN
RUN echo "/usr/local/lib" > /etc/ld.so.conf.d/local.conf
RUN mkdir -p /var/lang/lib && cp -fvr /usr/local/lib/* /var/lang/lib/
失败生成的输出:
.........
Inspecting Dockerfile to figure how to build project and docker image
Executing docker build
... invoking 'docker build', working folder '/data00/jenkins-slaves/SAWSMGT/workspace/XXXX, docker file /data00/jenkins-slaves/SAWSMGT/workspace/XXXX/Dockerfile2, image name xxxx:dev'
... docker build -f "/data00/jenkins-slaves/SAWSMGT/workspace/XXXX/Dockerfile2" -t xxxx:dev --network=host .
... docker build: #1 [internal] booting buildkit
... docker build: #1 pulling image moby/buildkit:buildx-stable-1
... docker build: #1 pulling image moby/buildkit:buildx-stable-1 1.4s done
... docker build: #1 creating container buildx_buildkit_default 0.0s done
... docker build: #1 ERROR: Error response from daemon: No such image: moby/buildkit:buildx-stable-1
... docker build: ------
... docker build: > [internal] booting buildkit:
... docker build: ------
... docker build: WARNING: No output specified with docker-container driver. Build result will only remain in the build cache. To push result image into registry use --push or to load image into docker use --load
... docker build: ERROR: Error response from daemon: No such image: moby/buildkit:buildx-stable-1
Error executing "docker build"
Error executing "docker build"
我尝试将.NET版本更改为新版本和旧版本,尝试添加--load或--push作为构建选项,但没有成功。
有什么想法吗???
1条答案
按热度按时间wgmfuz8q1#
通过升级docker版本在我的centos 7.x上修复它