当先锋百科网

首页 1 2 3 4 5 6 7

Docker是一种轻量级的虚拟化技术,可以实现在不同的运行环境下部署应用程序。而在Docker中,存储是一个非常重要的问题。

Docker提供了两种存储方式,分别是VolumesBind Mounts,下面我们来具体看一下它们的区别:

Volumes:
- 可以在不同的容器之间共享数据
- Volumes是在Docker主机上创建的,可以独立于容器存在
- Volumes的数据是安全的,可以通过卷的名称进行访问
- 可以使用docker volume命令来管理卷
Bind Mounts:
- 可以将主机上的目录/文件挂载到容器中
- 不支持在不同的容器之间共享数据
- 可以实现容器和主机间的数据共享

下面我们以存储菜鸟教程为例,来演示一下使用Volumes的方法:

# 创建一个名为"tutorial"的volume
$ docker volume create tutorial
# 运行一个容器
$ docker run -it -v tutorial:/app ubuntu
# 在容器中安装wget工具
$ apt update
$ apt install wget
# 下载菜鸟教程并存储到/tutorial目录下
$ wget -P /tutorial https://www.runoob.com/wp-content/uploads/2020/07/html-tutorial.pdf
# 退出容器
$ exit
# 查看volume中的数据
$ docker run -v tutorial:/app --rm ubuntu ls /app

这样,我们就可以通过docker volume命令来管理这个volume了。