首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >docker镜像中复制文件的不同SHA1 (来自Maven )

docker镜像中复制文件的不同SHA1 (来自Maven )
EN

Stack Overflow用户
提问于 2021-08-11 09:41:23
回答 1查看 81关注 0票数 1

我目前正在使用Dockerfile为我的项目构建Docker镜像。在其中,我不得不复制项目中某个库加载的文件(二进制机器学习模型)(我尝试了copy和ADD命令),似乎库正在查找模型文件的sha1以验证其完整性。

然而,当我在运行的docker容器中检查这个文件的sha1时,它与原始文件的sha1不同(在构建镜像的机器上)。

我检查了Docker镜像中添加的其他文件(脚本等)。所有的sha1都是不同的。

我们尝试在不同的操作系统上构建镜像,尝试在docker镜像中设置系统区域设置(我想了一些关于编码的问题……)但是什么都不起作用。这是Docker的“正常”行为吗?

谢谢

编辑: Dockerfile由Spotify Maven插件(Java)运行

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-08-11 12:04:17

最后我发现了问题所在。它不是docker,也不是Spotify Maven插件,而是构建项目时的maven资源过滤。我不知道它到底在做什么,但是我的二进制文件在这一步之后被修改了。为这些文件添加了一个排除,现在一切都好了。

参考代码:

代码语言:javascript
复制
<plugin>
    <artifactId>maven-resources-plugin</artifactId>
    <version>3.1.0</version>
    <executions>
        <execution>
            <id>prepare-dockerfile</id>
            <phase>validate</phase>
            <goals>
                <goal>copy-resources</goal>
            </goals>
            <configuration>
                <outputDirectory>${project.build.directory}/docker-ready</outputDirectory>
                <resources>
                    <resource>
                        <directory>docker</directory>
                        <filtering>true</filtering>
                    </resource>
                </resources>
                <nonFilteredFileExtensions>
                    <nonFilteredFileExtension>p12</nonFilteredFileExtension>
                    <nonFilteredFileExtension>crt</nonFilteredFileExtension>
                    <nonFilteredFileExtension>pem</nonFilteredFileExtension>
                    <nonFilteredFileExtension>bin</nonFilteredFileExtension>
                </nonFilteredFileExtensions>
            </configuration>
        </execution>
    </executions>
</plugin>
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/68739568

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档