0
点赞
收藏
分享

微信扫一扫

Docker中容器数据持久化-数据卷的简单使用



数据卷

数据卷是一个可供一个或多个容器使用的特殊目录,它绕过 UFS,提供很多有用的特性:

数据卷 可以在容器之间共享和重用
对 数据卷 的修改会立马生效
对 数据卷 的更新,不会影响镜像
数据卷 默认会一直存在,即使容器被删除

目的

启动两个容器,让这两个容器使用同一个数据卷ROOT下的index.html

实现

来到 /usr/local/docker/tomcat目录下,新建目录ROOT,并进入ROO目录,新建index.html文件。

 

Docker中容器数据持久化-数据卷的简单使用_数据卷

启动容器时并设置数据卷

docker run -p 8080:8080 --name tomcat -d -v /usr/local/docker/tomcat/ROOT:/usr/local/tomcat/webapps/ROOT tomcat

注:

docker run 是启动容器的命令;-p代表端口号的映射;第一个8080是宿主机的端口;第二个8080是容器的端口;

--name 表示名字标识;-d 表示以守护态运行;-v 就是表示数据卷的设置,左边是宿主机的位置,:右边是容器的位置,这就代表

以宿主机/usr/local/docker/tomcat/ROOT的ROOT目录代替容器中/usr/local/tomcat/webapps/ROOT的ROOT目录;

tomcat代表镜像名。

Docker中容器数据持久化-数据卷的简单使用_docker_02

 

列出容器

docker ps

 

Docker中容器数据持久化-数据卷的简单使用_数据卷_03

以终端交互的方式进入容器

docker exec -it tomcat bash

 

Docker中容器数据持久化-数据卷的简单使用_tomcat_04

可以看到此时ROOT下已经替换成了数据卷的内容,输入exit退出交互。

启动第二个容器

docker run -p 8081:8080 --name tomcat1 -d -v /usr/local/docker/tomcat/ROOT:/usr/local/tomcat/webapps/ROOT tomcat

此时将宿主机的端口号改为8081,并将镜像名字修改为tomcat1。

 

Docker中容器数据持久化-数据卷的简单使用_数据卷_05

验证效果

在宿主机中打开两个浏览器分别输入

ip:8080和ip:8081

Docker中容器数据持久化-数据卷的简单使用_docker_06

 

举报

相关推荐

0 条评论