Docker学习笔记3(狂神)

可视化

这样我们就已经安装成功了。

 

 

我们一般选择本地的。

然后我们就可以看到这样的面板。

不过这个我们平时不会去使用,只是作为了解即可。 

镜像分层的理解:

 

如何提交一个自己的镜像。

Commit镜像 

实战测试

我们现在启动了tomcat。

我们进入了tomcat控制台。

 

这步操作上一次笔记已经讲解过了。

然后我们就要去使用它了。

我们就可以登录到我们的tomcat页面了。

4. 将我们操作过的容器通过commit提交为一个镜像,我们以后就使用我们修改过的镜像即可,这就是我们自己的一个修改的镜像

到了这里我们才算入门docker。

总结一句话:容器的持久化和同步操作!容器间也是可以数据共享的!

使用数据卷 

方式一:直接使用命令来挂载 -v

我们会发现我们的环境中就多了测试这个文件夹。

我们看完了虚拟机本机中的以后,我们再来看看我们的容器的home文件夹下有什么:

我们会发现我们的容器的home文件夹下什么都没有:

我们现在要做的事情就是我们以后在容器home下做的操作也能同步到 虚拟机本机中的home下面。

测试文件的同步:

 我们在容器里创建的文件会同步到本机对应的文件夹中去。

我们先关闭容器:

我们在本地去修改test.java文件里面的内容。

 现在我们再重新打开我们的容器看里面有没有什么变化:

这就可以看出我们的文件是双向绑定的。

好处:我们以后修改只需要在本地修改即可,容器内会自动同步!

 实战:安装MySql

思考:MySQL的数据持久化的问题

1.获取镜像:

2.运行容器,需要做数据挂载

启动我们的Mysql

注:

这样我们在本地也能进行连接打开了。

 

我们的本地就已经有mysql了。这就可以证明和我们的docker容器是同步的了。

然后我们再去在navicat中去创建一个数据库表test。

再去虚拟机中看一下:

 

那我们去把我们的mysql删除掉呢?

 

我们的数据依旧没有丢失,这就实现了一个数据的持久化。

查看所有的volume(卷)的名字:

 这种-v只写了容器内的路径,没写容器外的路径,就是我们的匿名挂载。

具名挂载:

通过-v 卷名:容器内路径

 查看一下卷:

所有的docker容器内的卷,没有指定目录的情况下都是在 /var/lib/docker/volumes/xxxx/_data

 我们通过具名挂载可以方便的找到我们的一个卷,大多数情况下在使用具名挂载

如何确定我们的是匿名挂载,具名挂载还是我们指定路径挂载

-v 容器内路径 匿名挂载

-v 卷名:容器内路径 具名挂载

-v /宿主机路径::容器内路径 指定路径挂载

拓展:

 初识Dockerfile

Dockerfile就是用来构建docker镜像的构建文件!命令脚本!先体验一下!

通过这个脚本可以生成镜像,镜像是一层一层的,脚本一个个的命令,每个命令都是一层!

 

 

然后我们去来启动我们自己的数据卷:

查看卷的挂载路径:

 

 

测试一下刚才的文件是否同步出去了!

这种方式未来我们使用的非常多,因为我们通常会构建自己的镜像。

 假设构建镜像时没有挂载卷,要手动镜像挂载 -v 卷名:容器内路径!

数据卷容器

多个mysql同步数据!

开启三个容器,用我们自己的数据卷去操作。

 

 然后我们再去创建第二个容器:

 

我们就能看到数据的同步了。

我们再创建一个容器:

 

 

现在我们把容器1停止并删除:

 

 

但是我们的docker03还可以查看这个文件。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值