Docker数据卷容器与普通容器有什么差别?与容器互联的区别是什么?

风之殇痕 发布于 2018/01/31 12:03
阅读 1K+
收藏 1

最近在自学docker,学到数据卷容器这部分,有如下疑问:

1、数据卷容器,是用来共享数据分区的,它 和 普通容器还有别的差别吗?

    我的理解是数据卷容器,除了数据共享之外,它也具有普通容器的一切功能。

2、数据卷容器 和 容器互联 的区别?

    我的理解是容器互联是两个容器之间打通了一条通路,但和数据卷容器的数据共享,还是不一样的。

由于初学,不知理解是否正确,特来向大神们讨教和求证。

加载中
0
quanwei9958
quanwei9958

容器需要从镜像中创建,volume不用。

 volume就是一个volume, 容器是一个容器两个概念。 容器本身还有有端口映射,环境变量各种其他元信息。

0
dodoBehind
dodoBehind

我觉得数据卷容器就是一个普通容器,只不过它有约定俗成的特殊用途。

在《docker技术入门和实战》里有两点可以引用:

1:“数据卷容器也是一个容器,但是它的目的是专门提供数据卷给其他容器挂载”

2:【在run(普通)容器时绑定数据】和【创建数据卷容器】的命令是一样的
在run容器时绑定数据:

docker run -d -P --name web -v /webapp:/opt/webapp training/webapp python app.py

创建数据卷容器:

docker run -it -v /dbdata --name dbdata ubuntu

其他容器引用数据卷容器的数据卷

docker run -it --volumes-from dbdata --name db1 ubuntu

 

风之殇痕
风之殇痕
谢谢(*°∀°)=3
0
自行车丢了
自行车丢了

数据卷容器和普通容器是一样的,但数据卷和数据卷容器又不一样

docker的数据卷并不是一个容器,而是一个目录,数据卷容器则是一个容器;

数据卷的创建由 docker volume create命令创建,创建后不能通过docker ps 或docker ps -a 查看到因为不是一个容器。而数据卷容器通过 docker run 命令创建是一个容器自然也可以通过 docker ps命令查看到。

docker数据卷其实是在/var/lib/docker/volumes/目录下创建一个子目录结构,优点是不运行,不占用cpu资源

风之殇痕
风之殇痕
谢谢,好像明白些了
返回顶部
顶部