docker-compose.yml 文件

编写 `docker-compose.yml` 文件是为了定义和管理 Docker 容器的配置,其中包括容器的构建、服务之间的连接、端口映射等。下面是一个示例 `docker-compose.yml` 文件,假设我们要部署一个简单的 Node.js 网站:

```yaml

version: '3'

services:

web:

build: .

ports:

  • "80:3000"

volumes:

  • .:/app

environment:

NODE_ENV: production

```

现在让我解释每个部分的含义:

  • `version: '3'`:指定 Docker Compose 文件的版本。

  • `services:`:定义一个或多个服务。在这个示例中,我们只有一个服务,名为 `web`。

  • `web:`:指定了服务的名称。

  • `build: .`:指定了 Dockerfile 的构建路径。`.` 表示当前目录,这意味着 Docker 将在当前目录中查找 `Dockerfile` 文件并构建容器。

  • `ports:`:定义了端口映射。在这个示例中,容器的端口 `3000` 映射到主机的端口 `80`。

  • `volumes:`:定义了卷挂载。这使得当前目录中的文件可以在容器内部被访问,并且在代码更改时容器可以立即重新加载。

  • `environment:`:定义了环境变量。在这个示例中,我们设置了 `NODE_ENV` 变量为 `production`,这会影响 Node.js 应用程序的行为。

编写 `docker-compose.yml` 文件时,确保指定正确的服务名称、构建路径、端口映射、卷挂载和环境变量,以及使用正确的语法和缩进。这样,Docker Compose 就能正确地创建和管理你的容器。

相关推荐
小江的记录本20 分钟前
【Docker】 Docker 全平台部署(Linux / Windows / MacOS)与 前后端分离项目 容器化方案
java·linux·windows·http·macos·docker·容器
小江的记录本1 小时前
【Docker】《 Docker 高频常用命令速查表 》
java·前端·后端·http·docker·容器·eureka
杜子不疼.2 小时前
2026 年 Python AI 大模型部署全攻略:本地运行 + API 服务 + Docker 封装
人工智能·python·docker
真心喜欢你吖2 小时前
Ubuntu服务器安装部署OpenClaw完整教程(生产环境+systemd服务配置)
java·linux·服务器·ubuntu·docker·大模型·openclaw
AI服务老曹3 小时前
异构计算时代的安防底座:基于 Docker 与 ZLMediaKit 的 X86/ARM 混合架构解析
arm开发·docker·架构
Benszen15 小时前
Docker容器化技术全解析
运维·docker·容器
再ZzZ18 小时前
Docker快速部署Kafka(内网通用版本)
docker·容器·kafka
Stack Overflow?Tan9019 小时前
linux ubuntu22.04安装ROS2humble完整版的流程
linux·docker·ros2
正经教主1 天前
安全养虾:[windows]Docker部署OpenClaw详细过程记录
安全·docker·容器
程序员 沐阳1 天前
Docker 命令完全指南:从入门到实战
docker·容器·eureka