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 就能正确地创建和管理你的容器。

相关推荐
至乐活着17 小时前
Docker Compose多服务编排实战:从零搭建Node.js+MySQL+Redis全栈应用
docker·微服务·devops·容器编排·compose
木雷坞17 小时前
Firecrawl Docker Compose 自托管排查:镜像、Redis、队列和 Playwright
redis·docker·容器·firecrawl
whyfail17 小时前
Colima:把 Docker Desktop 从 Mac 上“瘦身”的那把刀
macos·docker·容器
大佐不会说日语~19 小时前
在 Windows 本地用 Docker 部署向量模型(bge-m3)
windows·docker·容器·llm·ollama
xsc-xyc19 小时前
CasaOS + Docker 挂载外接硬盘部署 Jellyfin 私人影院
运维·docker·容器
码云骑士19 小时前
27-Docker部署Django(上)-从2GB到180MB的镜像瘦身实战
docker·容器·django
日取其半万世不竭19 小时前
PostgreSQL 跑在 Docker 里怎么备份?恢复成功才算备份成功
数据库·docker·postgresql
至此流年莫相忘19 小时前
WSL2 下 Docker Desktop 完全配置指南:从安装到极速体验
运维·docker·容器
极客先躯20 小时前
高级java每日一道面试题-2026年02月12日-实战篇[Docker]-什么是容器的 Seccomp 配置?如何自定义?
java·运维·分布式·docker·容器·自动化·文件
master33621 小时前
GitLab (Docker) 常用命令及解决方案清单
docker·容器·gitlab