Docker 没有重命名卷的命令
bash
$ docker volume
Usage: docker volume COMMAND
Manage volumes
Commands:
create Create a volume
inspect Display detailed information on one or more volumes
ls List volumes
prune Remove unused local volumes
rm Remove one or more volumes
Run 'docker volume COMMAND --help' for more information on a command.
重命名卷,将旧的卷内容复制到新卷
bash
# 创建新卷
docker volume create dify-mysql-data
# 查看有那些卷
docker volume ls
# 查看新卷的存储位置
docker volume inspect dify-mysql-data
# 使用临时容器复制数据
docker run --rm \
-v af7083fa0b5fa16352e604579020cfb6cee28eab52c09ad2ee3cc886ad76818d:/source \
-v dify-mysql-data:/dest \
alpine \
sh -c "cp -a /source/. /dest/"
# 验证新卷内容 docker volume inspect dify-mysql-data 返回的 Mountpoint 路径
ll /var/lib/docker/volumes/dify-mysql-data/_data
docker compose yaml 引用新卷
yaml
volumes:
dify-mysql-data:
name: dify-mysql-data
external: true
重新加载配置 docker compose up -d