Spring Boot Application Secured by Let’s Encrypt Certificate(docker+spring boot+letsencrypt)

  • 内容
  • 评论
  • 相关

首先介绍一下项目,基础spring boot,docker部署,使用letsencrypt申请证书。

1 首先,安装一个工具

$ git clone https://github.com/certbot/certbot
$ cd certbot
$ ./certbot-auto --help

2 用这个工具生成证书和秘钥

./certbot-auto certonly -a standalone -d example.com -d www.example.com

3 打开/etc/letsencrypt/live/example.com目录


4 openssl pkcs12 -export -in fullchain.pem -inkey privkey.pem -out keystore.p12 -name tomcat -CAfile chain.pem -caname root


文件 keystore.p12生成在 /etc/letsencrypt/live/example.com目录下


证书申请完毕,开始配置sping boot项目,因为spring boot是运行在docker中的,默认服务器是Tomcat等,

server.port: 443
security.require-ssl=true
server.ssl.key-store:/etc/letsencrypt/live/example.com/keystore.p12
server.ssl.key-store-password: <your-password>
server.ssl.keyStoreType: PKCS12
server.ssl.keyAlias: tomcat


配置完成后重启container,然后重新运行项目

> docker run -it -d -v /etc/letsencrypt/live/example.com/keystore.p12:/etc/letsencrypt/live/example.com/keystore.p12 -p 443:443 springboot/application -Dspring.profiles.active=dev 

这个默认有效期是90天,到期要重新验证,可以设置自动更新,可以去官方文档查看。


评论

0条评论

发表评论

电子邮件地址不会被公开。 必填项已用*标注