【Docker】数据镜像(volumes)

2022-11-22 15:27:14 浏览数 (1)

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:

0 人点赞