node.js - 使用 Docker 为 Node、我的基于 Express 的 Node 应用程序、MongoDb 和 NodeBB 构建图像,通过 Passport 连接

标签 node.js mongodb express docker nodebb

我刚刚接触了 Docker,这个概念很棒。我找到了用于为 MongoDB 和 Node 构建图像的简单 Dockerfiles,我想知道,我是否只是将这些图像组合在一起以制作一个包含我的项目的图像,该项目是自定义 Node 应用程序(构建在 Express 上)、NodeBB 的组合由 MongoDB 支持的论坛,所有这些都与提供单点登录的 Passport 连接在一起。或者我应该将它们全部制作成单独的图像。

Docker 镜像能否包含其自己的 VPN 以及在不同 VM 上运行的各种服务?

最佳答案

Docker 没有标准化的方式来打包和供应由多个图像组成的应用程序,因此如果您想共享您的应用程序,最好将所有内容都放入一个 Dockerfile 中。话虽如此,如果共享您的应用程序不是一个重要的优先事项,那么使用多个 Docker 镜像可能更容易维护(另外您将能够使用其他 MongoDB 镜像)。然后,您可以使用 Fig (http://orchardup.github.io/fig/) 之类的东西来编排整个应用程序。

对于 Docker 容器之间的通信,Docker 有两种选择:启用所有跨容器的通信(这是默认设置),或者禁用除指定的通信之外的所有通信。您可以通过将标志“--icc=false”传递给 Docker 守护进程来启用第二个选项。之后,您需要明确地“公开”和“链接”容器,以便它们进行通信。可以找到相关文档here .

关于node.js - 使用 Docker 为 Node、我的基于 Express 的 Node 应用程序、MongoDb 和 NodeBB 构建图像,通过 Passport 连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22141906/

相关文章:

node.js - 当用户离开 Meteor 和/或 Iron 路由器中的页面时如何捕捉?

node.js & Express/读取流并写入客户端

mongodb - 配置从 Azure 应用服务对 MongoDB 集群的网络访问

node.js - 如何用 Jest 模拟 AWS Cognito CognitoIdentityServiceProvider?

node.js - Angular2 ExpressJs - 文件上传到服务器

node.js - 在heroku上找不到模块 'socket.io'

java - 如何使用Spring更新mongodb文档中的特定字段?

javascript - 查询以匹配数组输入

jquery - 如何使用 node.js 更改前端 html

node.js - 使用 Express 打开页面