💡
原文约700字/词,阅读约需3分钟。
📝
内容提要
卷用于将应用程序或数据库生成的数据文件与容器存储分开,确保数据在容器删除后仍然存在。通过创建卷,可以在Docker中共享数据并保持数据持久性。示例展示了如何创建MySQL数据库卷,并在删除容器后保留数据。
🎯
关键要点
- 卷用于将应用程序或数据库生成的数据文件与容器存储分开。
- 卷确保数据在容器删除后仍然存在,允许替换容器而不丢失数据。
- 卷的主要用途包括:在容器移除时保持数据、在主机文件系统与Docker容器之间共享数据、在Docker容器之间共享数据。
- 创建卷的命令为:docker volume create meu_volume。
- 运行带有卷的容器的命令为:docker run -d --name meu_container -v meu_volume:/app/data nginx。
- 创建MySQL数据库卷的命令为:docker volume create dadosdb。
- 使用命令docker volume ls可以检查已创建的卷。
- 从MySQL镜像创建容器的命令为:docker run -d --name mysql -v dadosdb:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=numsey mysql:5.7。
- 使用-v选项可以确保数据在容器删除后仍然保留。
- 进入MySQL容器的命令为:docker exec -it mysql bash。
- 在MySQL中创建新数据库的命令为:CREATE DATABASE meubanco;。
- 移除容器的命令为:docker rm mysql。
- 可以创建新的容器并使用相同的卷,数据将会保留。
❓
延伸问答
Docker中的卷有什么作用?
卷用于将应用程序或数据库生成的数据文件与容器存储分开,确保数据在容器删除后仍然存在。
如何在Docker中创建一个卷?
可以使用命令:docker volume create meu_volume 来创建一个卷。
如何确保数据在容器删除后仍然保留?
使用-v选项在运行容器时挂载卷,例如:docker run -d --name meu_container -v meu_volume:/app/data nginx。
如何在MySQL中创建新的数据库?
在进入MySQL容器后,可以使用命令 CREATE DATABASE meubanco; 来创建新数据库。
如何检查已创建的卷?
可以使用命令 docker volume ls 来列出所有已创建的卷。
如果不使用卷,数据会发生什么?
如果不使用-v选项,数据将在每次容器删除时被清除。
➡️