Dokcer进阶-初识DockerFile

Posted Liuzhaoxuan

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Dokcer进阶-初识DockerFile相关的知识,希望对你有一定的参考价值。

初识DockerFile

dockerfile就是用来构建镜像的构建文件,命令脚本。通过这个脚本可以生成镜像,镜像是一层一层的,脚本一个个命令,每一个命令就是一层。Dockerfile里用上一篇的容器卷技术,生成一个镜像 !

#通过一个dockerfile文件,名字可以随机,建议用dockerfile
#文件中的内容 指令(大写)  参数 

FROM    centos

VOLUME  ["volume01","volume02"]

CMD     echo "----end----"

CMD     /bin/bash


启动自己制作的镜像

这两个目录就是刚才生成的两个目录
这个卷和外部一定有一个同步的目录!
查看一下挂载目录

测试一下,在容器里创建文件是否同步到宿主机

文件在这个目录下

这种方式使用的会很多,因为会通常构建自己的镜像
假设构建镜像时候没有挂载卷,要手动镜像挂载,-v卷名:容器内部路径

数据卷容器

多个mysql同步数据

打开第一个容器

打开第二个容器,同时只想docker01

进入docker01,在volume01下创建一个test.txt文件

进入docker02,查看是否同步

多个MySQL数据共享

[root@localhost home]# docker run -d -p 3306:3306 -v /home/mysql/conf:/etc/mysql/conf.d -v /home/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 --name mysql01 mysql:5.7
。
[root@localhost home]# docker run -d -p 3306:3306  -e MYSQL_ROOT_PASSWORD=123456 --name mysql01 --volumes-from mysql01  mysql:5.7
#这样可以实现两个容器数据同步

.

总结

容器之间配置信息传递,数据卷容器的生命周期一直持续到没有容器使用为止。
但是一旦数据持久化到本地,本地数据是不会删除的。

以上是关于Dokcer进阶-初识DockerFile的主要内容,如果未能解决你的问题,请参考以下文章

初识Dockerfile+进阶Dockerfile(手把手叫你如何编写Dockerfile)

初识Spring源码 -- doResolveDependency | findAutowireCandidates | @Order@Priority调用排序 | @Autowired注入(代码片段

初识Spring源码 -- doResolveDependency | findAutowireCandidates | @Order@Priority调用排序 | @Autowired注入(代码片段

Docker 进阶之 Dockerfile 详解

Docker| 进阶吧,DockerFile

Docker 从入门到进阶七:DockerFile 与 Docker Compose