0

我有一个带有配置服务器的 Spring Boot 应用程序,该服务器使用 github 存储库存储属性文件。我制作了配置服务器 proj 的 docker 映像,在 AWS EC2 上运行它,当我尝试从中获取属性列表时

ec2-52-201-220-55.compute-1.amazonaws.com:8012/PhotoAppApiConfigServer/default

我在 docker logs config_server_id 中收到以下错误:

Cannot decrypt key: myEureka.password (class java.lang.IllegalStateException: Cannot load keys from store: URL [file:/apiEncryptionKey.jks])

在创建此映像之前,我的项目根目录和资源目录中有 apiEncryptionKey.jks,我的 dockerfile 是:

FROM openjdk:8-jdk-alpine
VOLUME /tmp
COPY apiEncryptionKey.jks apiEncriptionKey.jdk
COPY UnlimitedJCEPolicyJDK8/* /usr/lib/jvm/java-1.8-openjdk/jre/lib/security/
COPY target/PhotoAppApiConfigServer-0.0.1-SNAPSHOT.jar ConfigServer.jar
ENTRYPOINT ["java", "-Djava.security.egd=file:/dev/./urandom", "-jar", "ConfigServer.jar"]

在配置服务器的 bootstrap.properties 文件中,我有:

encrypt.key-store.location=file:/apiEncryptionKey.jks
encrypt.key-store.password=1q2w3e4r
encrypt.key-store.alias=apiEncryptionKey

.jks 文件是 PKC12 文件。找不到 apiEncryptionKey.jks 文件有什么原因吗?

4

0 回答 0