通过构建三层 MERN 应用学习 Docker

发布: (2026年1月8日 GMT+8 12:22)
2 min read
原文: Dev.to

Source: Dev.to

为什么要使用 Docker?

  • 在 Docker 之前,运行一个应用意味着:
    • 手动安装依赖
    • 处理环境不匹配的问题
    • 经常听到经典的 “在我的机器上可以运行” 的抱怨
  • Docker 通过将应用及其依赖打包进容器来解决这些问题,使其可移植、保持一致且可重复。

我构建的内容

该应用的结构如下:

  • 前端: 通过 Nginx 提供服务的 React 风格前端
  • 后端: Node.js + Express API
  • 数据库: MongoDB

每个组件都运行在独立的 Docker 容器中,所有服务通过共享的 Docker 网络进行通信。
整个应用可以使用一条命令启动:

docker compose up --build

我练习的 Docker 概念

  1. Docker 镜像与容器
  2. Dockerfile
  3. 多阶段 Docker 构建
  4. Docker 网络
  5. Docker 卷(Volumes)
  6. Docker Compose

我的收获

  • 当你从头到尾构建一个项目时,Docker 的概念会变得更加清晰。
  • 使用 Docker Compose 管理多容器应用更加便捷。
  • 卷对于需要在容器重启后仍然保留的数据至关重要。
  • Docker 更多关注的是可复现的环境,而不是单纯的命令。

为什么这个项目重要

代码仓库:

Back to Blog

相关文章

阅读更多 »