spring-boot - 如何使用 spring-boot:build-image 嵌入 CA 证书?
问题描述
我需要使用将自签名证书添加到 spring-boot docker 映像spring-boot:build-image
,paketo-buildpacks/ca-certificates
但无法使其正常工作。
所以:
- 在哪里放置要添加的证书?
- 以哪种格式?
- 如何定义
paketo-buildpacks/ca-certificates
绑定? - 是否应该提供任何额外的论点
mvn spring-boot:build-image
?
到目前为止我没有成功的尝试:更新 pom.xml spring-boot-maven-plugin
:
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<configuration>
<image>
<bindings>
<binding>${basedir}/bindings/ca-certificates:/platform/bindings/ca-certificates</binding>
</bindings>
</image>
</configuration>
<executions>
<execution>
<goals>
<goal>build-image</goal>
</goals>
</execution>
</executions>
</plugin>
从${basedir}
文件夹:
mkdir bindings
mkdir bindings/ca-certificates
echo "ca-certificates" > bindings/ca-certificates/type
cp ~/.ssh/mycert.pem bindings/ca-certificates/
mvn spring-boot:build-image
编辑:按照@nick-valanos 的建议,直接在引导插件下(而不是在特定执行中)移动了图像绑定配置并解决了问题。
解决方案
我知道了。上面的 Maven 配置是针对 Mavenpackage
目标的,而不是spring-boot:build-image
.
这是完整的程序:
bindings/ca-certificates
在 maven 项目根目录 创建文件夹并添加到其中:type
文件只包含ca-certificates
- 您想要嵌入的 CA 证书(PEM 格式)
- 在 pom.xml 中,按照我的问题中配置的图像绑定添加
build-image
执行spring-boot-maven-plugin
${basedir}/bindings/ca-certificates:/platform/bindings/ca-certificates
- 跑
mvn clean package
推荐阅读
- sql-server - 如何根据基于表的函数的输出更新表列
- c - 如何使用 GUID_DEVINTERFACE_DISK 过滤 CM_Get_Device_Interface_List?
- c++ - 尝试在 Mac OS 上编译 Ardor 时出错
- asp.net - ASP.net WebForms 页面是否保持数据库连接?
- angular - 如何在 html 模板中打印 formControlName 值
- reactjs - 带有 React 测试库的引导表单控件
- c# - Netwonsoft JSON 反序列化为带有命名条目的列表
- mysql - 在 BEFORE INSERT 触发器中使用 WHILE 循环
- serialization - 如何在相关字段的序列化中获得超过 ID 的信息
- postgresql - Postgres如何在删除大列后减少表的存储