Caused by: javax.net.ssl.SSLHandshakeException: No appropriate protocol
- 项目背景
- spring boot + mysql + redis ..
- Jenkins + Docker + K8S
- 排查问题
- 网络查找说将数据库连接字符串requireSSL = false(不起作用)
- 本地访问正常,发布后报错
- 考虑环境问题
- 问题解决
拉取打包后的镜像,进入镜像
- 拉取镜像
docker pull [url]
- 启动镜像
docker run [Image id]
- 进入镜像
docker exec -it [container id] /bin/sh
- 查看JVM 安全配置文件
cd /usr/lib/jvm/java-1.8-openjdk/jre/lib/security 查找 jdk.tls.disabledAlgorithms=SSLv3, TLSv1, TLSv1.1, 多了TLSv1, TLSv1.1 限制
- 修复Dockerfile(文件加入修改安全配置文件的信息即可)
RUN sed -i 's/jdk.tls.disabledAlgorithms=SSLv3, TLSv1, TLSv1.1,/jdk.tls.disabledAlgorithms=SSLv3, /g' /usr/lib/jvm/java-1.8-openjdk/jre/lib/security/java.security



