【问题标题】:Meteor mup using Lets Encrypt with multiple domains only 1 ipMeteor mup 使用 Lets Encrypt 与多个域只有 1 个 ip
【发布时间】:2020-08-10 21:57:52
【问题描述】:

我有几个站点在不同的(虚拟)ubuntu 服务器上运行,如下所示:

  • mysite.mydomain.com (10.3.0.5)
  • another.mydomain.com (10.3.0.7)
  • siteabc.differentdomain.eu (10.3.0.16)

我已经为所有这些证书付费,并且正在使用 MUP (Meteor-up) 来部署它们:

proxy: {
    domains: 'mysite.mydomain.com',
    ssl: {
        crt: './mysite_mydomain_com.crt',
        key: './mysite_mydomain_com.key',
        forceSSL: true
    }
}

现在我想对所有这些都使用 Lets Encrypt。 我将端口 80 转发到 10.3.0.5(第一个站点),这很有效(MUP 会自动创建 nginx docker 容器等) ,但其他的不起作用,因为它们需要第一个已经使用的端口 80。

proxy: {
    domains: 'mysite.mydomain.com',
    ssl: {
        letsEncryptEmail: 'mysite@mydomain.com'
        forceSSL: true
    }
}

是否可以在同一个 ip 后面有多个域,并且仍然使用 Lets Encrypt?对于 Meteor 应用程序和 Meteor-up 部署,我将如何做到这一点?

【问题讨论】:

    标签: meteor lets-encrypt mup


    【解决方案1】:

    是的,简短的回答。 MUP安装一个docker镜像运行nginx代理https://github.com/nginx-proxy/nginx-proxy

    nginx-proxy 设置一个运行 nginx 和 docker-gen 的容器。 docker-gen 为 nginx 生成反向代理配置,并在容器启动和停止时重新加载 nginx。

    请参阅 Docker 的自动 Nginx 反向代理,了解您可能想要使用它的原因。

    您无需担心细节,它会根据目标 URL 自动将流量引导到正确的 docker 实例。我使用它在同一个 EC2 实例上运行多个登台/演示服务器,简单:)

    【讨论】:

    • 我可以看到 MUP 为所有应用程序生成的 jwilder/nginx-proxy docker 容器。而且我可以部署第一个应用程序,因为端口 80 被转发到其内部 ip (10.3.0.5),但是现在当我部署其他应用程序时它失败了(浏览器中的错误 = NET::ERR_CERT_AUTHORITY_INVALID)这对我来说很有意义,因为端口 80 是指向 10.3.0.5。我需要在 mup.js 配置文件中添加一些东西吗?
    • Mikkel,这如何与 Let's Encrypt 生成的实际证书一起工作?我认为 SSL 证书仅对一个域(加上可能的子域)有效,但 TomTem 列出了两个不同的域。 mup 会自动创建两个单独的 Let's Encrypt 证书吗?
    • 每个 docker 镜像监听 80 端口。nginx-proxy 将 https: 上的传入流量转发到适当的 docker 镜像以处理请求,是的,有多个 let-encrypt 证书,每个名称一个提到了
    • 您在只有 1 个虚拟机上的许多 docker 容器中有很多应用程序,但我有很多虚拟机,每个虚拟机运行 1 个流星应用程序,所以在我的情况下,只有 1 个按描述工作(我的路由器转发到的那个) 80端口),所以我还在寻找解决方案......
    • 如果您想将它们全部设置在一个 IP 上,您将需要一个负载均衡器,或者您可以使用 NGINX 根据传入的 URL 转发请求。我不认为 MUP 可以选择这样做。如果你想继续使用 MUP 和letsencrypt,你可以让每个虚拟机都有自己的公共IP - 或者你不能获得更多的IP?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-04-28
    • 1970-01-01
    • 1970-01-01
    • 2011-09-11
    • 1970-01-01
    • 2017-07-16
    相关资源
    最近更新 更多