Docker数据持久化

1. Volume

(1)创建mysql数据库的container

docker run -d --name mysql01 -e MYSQL_ROOT_PASSWORD=123456	mysql:5.7

(2)查看volume

docker volume ls

(3)具体查看该volume

docker volume inspect
48507d0e7936f94eb984adf8177ec50fc6a7ecd8745ea0bc165ef485371589e8

(4)名字不好看,name太长,修改一下

docker run -d --name mysql01 -v mysql01_volume:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456	mysql:5.7

-v mysql01_volume:/var/lib/mysql表示给上述的volume起一个能识别的名字

(5)查看volume

 docker volume ls
 docker volume inspect mysql01_volume

(6)测试是否可以持久化保存数据

# 进入容器中
docker exec -it mysql01 bash

# 登录mysql服务
mysql -uroot -p123456

# 创建测试库
create database db_test

# 退出mysql服务,退出mysql container # 删除mysql容器
docker rm -f mysql01

# 查看volume
docker volume ls

# 发现volume还在
DRIVER         VOLUME NAM
local          mysql01_volume

# 新建一个mysql container,并且指定使用"mysql01_volume"
docker run -d --name test-mysql -v mysql01_volume:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 mysql:5.7

# 进入容器,登录mysql服务,查看数据库docker exec -it test-mysql bash mysql -uroot -p123456
show database;

# 可以发现db_test仍然在
| information_schema |
| db_test	|
| mysql	|
| performance_schema |
| sys |

2. Bind Mounting

(1)创建一个tomcat容器

docker run -d --name tomcat01 -p 9090:8080 -v
/tmp/test:/usr/local/tomcat/webapps/test tomcat

(2)查看两个目录

centos:cd /tmp/test
# 进入tomcat容器
docker exec -it tomcat01 bash
tomcat容器:cd /usr/local/tomcat/webapps/test

(3)在centos的/tmp/test中新建1.html,并写一些内容

<p style="color:blue; font-size:20pt;">Only test content!!!</p

(4)进入tomcat01的对应目录查看,发现也有一个1.html,并且也有内容

(5)在centos7上访问该路径:

curl localhost:9090/test/1.html

(6)在win浏览器中通过ip访问

会显示Only test content!!!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值