# docker compose cp

## 描述

* 在 **Compose 管理的服务容器** (service container) 和本地文件系统 (local filesystem) 之间复制 (拷贝) 文件或文件夹。
* 可以双向复制：既可以把容器里的东西拷贝到本地，也可以把本地的文件拷贝进容器。

## 用法

```
docker compose cp [OPTIONS] SERVICE:SRC_PATH DEST_PATH
docker compose cp [OPTIONS] SRC_PATH SERVICE:DEST_PATH
```

* `SERVICE:SRC_PATH` 表示从某个服务 (service) 的容器内路径复制。
* `SERVICE:DEST_PATH` 表示将东西复制到服务容器里的路径。
* 也可以在路径里用 `-` 来表示标准输入 / 输出 (类似 `docker cp` 的行为)。

## 选项

| 选项                  | 含义                                                                      |
| ------------------- | ----------------------------------------------------------------------- |
| `--all`             | 包括由 `docker compose run` 创建的所有容器 (如果服务有多个实例或 run 过) 。                   |
| `-a, --archive`     | 归档 (archive) 模式：复制时保留所有的 UID / GID 信息 (用户 / 组信息) 。                      |
| `-L, --follow-link` | 总是跟随 (follow) `SRC_PATH` 中的符号链接 (symbolic links) —— 即使是软链接，也把它们当真实路径处理。 |
| `--index`           | 当某服务有多个副本 (replicas) 时，可以用这个来指定 **哪个容器** (索引) 执行复制操作。                   |
