如果您感到困惑 Spring 在 docker 中启动应用程序,使用 SSL 的最佳方法是什么

What is the best approach for using SSL if you are conterized Spring Boot application in docker

我有一个简单的 Spring 启动应用程序。我有一张 docker 图片。我是 运行 某个云中实例容器中的图像(例如,在 DigitalOcean 中的液滴中)。该液滴连接到特定域名。 在什么地方实施 SSL 比较好?我应该把证书放在哪里?是否有必要使用某些第 3 方网络服务器,如 nginx 或额外的 tomcat

我建议将 nginx 放在前面来处理 SSL 以及其他常见的流量杂务(gzip'ing、CORS 处理...)。它还允许您在其专用网络中隔离您的应用程序服务器(spring 启动)。只能公开nginx服务

例如:

version: '3.3'

services:
  nginx:
    image:...
    ports:
      - 80:80
    networks:
      - public
      - backend
  springboot:
    image: ...
    container_name: springboot
    networks:
      - backend