Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/docker/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js 在停靠的Mern应用程序上启用https?数字海洋_Node.js_Docker_Nginx_Https_Mern - Fatal编程技术网

Node.js 在停靠的Mern应用程序上启用https?数字海洋

Node.js 在停靠的Mern应用程序上启用https?数字海洋,node.js,docker,nginx,https,mern,Node.js,Docker,Nginx,Https,Mern,我已经构建了一个MERN堆栈应用程序,并将我的Nodejs(express)服务器和React前端分离到单独的docker容器中,并可以使用compose文件启动它们 我希望它能在运行docker/docker compose的数字海洋水滴上生产,我想知道如何用ssl保护它?我是否需要在每个容器上启用证书,还是只在液滴上启用证书 在研究这个主题时,我看到许多人在他们的前端(React)中使用Nginx,但我不确定这是如何联系起来的?处理SSL最常用的方法是添加一个反向代理(例如Nginx),为您

我已经构建了一个MERN堆栈应用程序,并将我的Nodejs(express)服务器和React前端分离到单独的docker容器中,并可以使用compose文件启动它们

我希望它能在运行docker/docker compose的数字海洋水滴上生产,我想知道如何用ssl保护它?我是否需要在每个容器上启用证书,还是只在液滴上启用证书


在研究这个主题时,我看到许多人在他们的前端(React)中使用Nginx,但我不确定这是如何联系起来的?

处理SSL最常用的方法是添加一个
反向代理(例如Nginx),为您的所有环境执行SSL卸载

                    +----------+
                    |          |
                    |  Client  |
                    |          |
                    +----+-----+
                         |
                         | myDomain.net
                         |              
                     [INTERNET]
                         |
                         |
                         v  :443
                +--------+-------+
            /*  |                |   /api
     +----------+  Revese Proxy  +---------+
     |          |   (Gateway)    |         |
     |          +----------------+         |
     |                                     |
     |                                     |
     | :8080                               | :3000
     |                                     |
+----+----------+                +---------+-----+
|               |                |               |
|      SPA      |                |    Backend    |
|  (webserver)  |                |  (API server) |
|               |                |               |
+---------------+                +---------------+

您需要在compose中添加一个附加组件。您可以将其称为网关。现在,您可以将SSL作为密码传递,现在它将充当网络的中间件,对传出数据进行加密,对传入数据进行解密


我发现一个教程可能非常适合您的设置:

欢迎使用SO!请在每篇文章中只问一个问题以避免混淆。非常感谢!这正是我需要的帮助!