在 Docker 上让 SSL 与 nopCommerce 一起工作

Getting SSL working with nopCommerce on Docker

我当前的设置是 Ubuntu VM,带有 docker 运行 nopCommerce 容器和 80:80 端口绑定。我想安装一个 ssl 证书,最好是使用 certbot,然后让一切正常运行。我的问题是:

  1. 我是在 VM 上还是在 docker 映像中安装证书?
  2. 我需要 nginx 或类似软件吗,如果需要,我应该使用另一个 docker 映像还是直接安装?
  3. 如果确实需要,应该如何配置?
  4. 直接暴露 80 端口似乎是错误的方法,什么是正确的方法?

我找到了这个指南,但它假设 ssl 已经安装并且根本没有提到 docker 所以我假设它是直接安装的:https://www.nop-templates.com/how-to-enable-ssl-for-your-nopcommerce-store.

这个论坛 post 似乎也是相关的:https://www.nopcommerce.com/en/boards/topic/81536/how-to-set-up-ssl-on-the-official-docker-image

如果您使用 kestrel(在您的情况下必须如此),那么您可以添加环境参数并在管理面板中设置后公开 443。

如果您在开发环境中,也可以使用自签名 ssl。

EXPOSE 443
ENV ASPNETCORE_Kestrel__Certificates__Default__Password=
ENV ASPNETCORE_Kestrel__Certificates__Default__Path=