【docker】 /bin/sh: ./mvnw: No such file or directory解决方案.dockerignore被忽略

server/2024/10/22 2:44:08/

报错如下:解决方案很简单,但是容易让大家忽视的问题。
在这里插入图片描述

 => CACHED [stage-1 2/4] WORKDIR /work/                                                                                                                                                                                                                                                                            0.0s=> CACHED [stage-1 3/4] RUN chown 1001 /work     && chmod "g+rwX" /work     && chown 1001:root /work                                                                                                                                                                                                              0.0s=> CACHED [build 2/4] WORKDIR /build/                                                                                                                                                                                                                                                                             0.0s=> CACHED [build 3/4] COPY . .                                                                                                                                                                                                                                                                                    0.0s=> ERROR [build 4/4] RUN ./mvnw  -DskipTests=true clean package -Dnative -U                                                                                                                                                                                                                                       0.2s
------> [build 4/4] RUN ./mvnw  -DskipTests=true clean package -Dnative -U:
0.164 /bin/sh: ./mvnw: No such file or directory
------
Dockerfile:44
--------------------42 |     COPY . .43 |     44 | >>> RUN ./mvnw  -DskipTests=true clean package -Dnative -U45 |     46 |     
--------------------

文章主题已经点明解决方案:.dockerignore文件。大家都使用过.gitignore,原理是一样的。
我们看一下项目生成时,默认dockerignore内容是什么

*
!target/*-runner
!target/*-runner.jar
!target/lib/*
!target/quarkus-app/*

重点就是这个*,默认将所有文件忽略啦,所以dockerfile运行命令时,无法使用./mvnw命令。之前的文章也提过,quarkus原生包镜像需要依赖二进制文件,故target目录下文件需要排除。下面简单介绍一下:
.dockerignore文件是用来指定在构建Docker镜像时应该忽略的文件和目录的配置文件。它的应用场景和原理如下:

  • 应用场景
    避免将不必要的文件和目录复制到Docker镜像中,减小镜像大小。
    提高构建速度,因为Docker在构建镜像时会忽略.dockerignore中指定的文件和目录,避免不必要的复制操作。
  • 原理
    在构建Docker镜像时,Docker会读取.dockerignore文件中列出的文件和目录,并在构建镜像时排除这些文件和目录。
    .dockerignore文件的工作原理类似于.gitignore文件,通过指定需要忽略的文件和目录,可以在构建镜像时过滤掉这些文件,只复制必要的文件到镜像中。Docker会按照.dockerignore文件中的规则来判断哪些文件和目录应该被忽略,然后在构建镜像时将其排除在外。

http://www.ppmy.cn/server/48265.html

相关文章

css特效:对多个tag标签实现模拟地球仪特效

要实现对多个<a>标签&#xff08;比如链接&#xff09;的模拟地球仪特效和鼠标跟随特效&#xff0c;你可以使用CSS和一点点JavaScript来完成。下面是一个基本的示例代码&#xff1a;HTML代码&#xff1a; <!DOCTYPE html> <html lang"en"> <h…

电商项目-day02

文章目录 分析项目结构登录请求项目搭建Result总结 分析项目结构 语法的限制打开 端口修改 修改port 前端的入口工程是main.js 登录请求 早期的登录是使用session 称为 会话 也称为域 使用jwt进行验证 模块 spzx-partent 父工程 使用pom 其他的模块都是 jar包 项目搭…

利用ffmpeg从视频中提取纯(音频、视频、字幕)再合成视频

1. 提取纯音频 ffmpeg -i rawVideo.mp4 -acodec copy -vn vnVideo.aac 或者 ffmpeg -i rawVideo.mp4 -c:a copy -vn vnVideo.aac-vn: v代表视频&#xff0c;n代表no,无视频的意思 -acodec copy: 音频只拷贝&#xff0c;不编解码 -acodec的缩写-c:a -codecd的缩写-c2. 提取纯视…

ChatGPT

ChatGPT是一款由OpenAI开发的人工智能助手&#xff0c;它能够通过自然语言处理技术与用户进行交互&#xff0c;提供各种服务和帮助。在这篇博客中&#xff0c;我们将探讨ChatGPT的工作原理、优势以及它在未来可能的应用领域。 首先&#xff0c;让我们来了解一下ChatGPT的工作原…

网络框架netpoll中的SO_ZEROCOPY

背景了解 https://www.163.com/dy/article/FS6AS7SS0518R7MO.html https://docs.kernel.org/networking/msg_zerocopy.html send() with MSG_ZEROCOPY kernel v4.14 版本接受了来自 Google 工程师 Willem de Bruijn 在 TCP 网络报文的通用发送接口 send() 中实现的 zero-cop…

2021 hnust 湖科大 操作系统课设 报告+原代码+指导书+流程图源文件

2021 hnust 湖科大 操作系统课设 报告原代码指导书流程图源文件 详情 目录 验证类实验&#xff1a; 1 实验一&#xff1a;Windows进程管理 1 一、 实验题目&#xff1a; 1 二、 实验目的 1 三、 实验内容 1 四、 实验结果与分析 2 五、 小结与心得体会 5 实验二&#xff1a;L…

综合型驱鸟装置:光伏电站集束冲击波驱鸟器

光伏电站作为绿色、清洁的能源生产方式&#xff0c;正在全球范围内得到快速发展。在光伏电站的建设和运营过程中&#xff0c;鸟类活动所带来的影响逐渐凸显&#xff0c;成为电站管理者需要面对的重要问题。在此背景下&#xff0c;光伏电站驱鸟器的需求也不断增长。 目前市场上的…

系统提示xlive.dll丢失有什么解决办法?详细解决办法介绍

如果你曾经在玩那些超酷的大型游戏时遇到过xlive.dll文件丢失的问题&#xff0c;那么你来对地方了&#xff01;这篇文章将带你一步步学习如何修复这个烦人的xlive.dll文件缺失问题。不仅如此&#xff0c;我们还会分享一些超级重要的注意事项&#xff0c;确保在修复过程中不会引…