docker容器中的数据需要持久化到磁盘上,否则容器关闭了以后,数据丢失了。
创建docker卷
使用docker volume create命令创建 docker 卷。此命令将在/var/lib/docker/volumes目录中创建一个卷。
代码语言:shell复制docker volume create data_volume
docker volume ls
docker volume inspect data_volume
docker run命令时,可以使用-v标志指定要使用的卷。这称为卷挂载。
代码语言:shell复制docker run -v data_volume:/var/lib/postgres postgres
如果想将数据放在 docker 主机上的特定位置或磁盘上已有数据,也可以将此位置挂载到容器上。这称为绑定安装。
代码语言:shell复制docker run -v /data/postgres:/var/lib/postgres postgres
使用docker-compose 配置卷
docker-compose.yml 目录挂载
代码语言:yaml复制version: "3.2"
services:
web:
image: nginx:latest
ports:
- 8080:80
volumes:
- ./target:/usr/share/nginx/html
docker-compose.yml 创建卷
代码语言:yaml复制version: "3.2"
services:
web:
image: nginx:latest
ports:
- 8080:80
volumes:
- html_files:/usr/share/nginx/html
web1:
image: nginx:latest
ports:
- 8081:80
volumes:
- html_files:/usr/share/nginx/html
volumes:
html_files: