Docker(2)

命运对每个人都是一样的,不一样的是各自的努力和付出不同,付出的越多,努力的越多,得到的回报也越多,在你累的时候请看一下身边比你成功却还比你更努力的人,这样,你就会更有动力。

导读:本篇文章讲解 Docker(2),希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com,来源:原文

目录

UnionFs (联合文件系统)

Commit 镜像

数据卷容器


UnionFs (联合文件系统)

        Union文件系统(UnionFs)是一种分层、轻量级并且高性能的文件系统,支持对文件系统的修改作为一次提交来一层层的叠加,同时可以将不同目录挂载到同一个虚拟文件系统下。Union文件系统是 Docker镜像的基础。镜像可以通过分层来进行继承,基于基础镜像(没有父镜像),可以制作各种具体的应用镜像一次同时加载多个文件系统,但从外面看起来,只能看到一个文件系统,联合加载会把各层文件系统叠加起来,这样最终的文件系统会包含所有底层的文件和目录

Commit 镜像

docker run -it -d --name tomcat1 -p 4200:8080 tomcat#运行容器

docker exec -it tomcat1 /bin/bash #进入正在运行的容器

cp -r webapps.dist/* webapps #copy tomcat 容器中的问价

docker commit -a="yu" -m="tomcat1" tomcat1 tomcat1:02 #提交容器

exit #退出容器

docker ps#查看容器

docker run tomcat:02#运行提交的容器


数据卷容器

        卷就是目录或文件,存在于一个或多个容器中,由docker挂载到容器,但不属于联合文件系统,因此能够绕过Union File System提供一些用于持续存储或共享数据的特性,卷的设计目的就是数据的持久化,完全独立于容器的生存周期,因此Docker不会在容器删除时删除其挂载的数据卷。数据卷可在容器之间共享或重用数据并且卷中的更改可以直接实时生效,数据卷的生命周期一直持续到没有容器使用它为止。

Docker(2)

 Docker(2)

 

docker run  -v 镜像名#-v 主机目录:容器目录

mysql同步数据

docker run -d -p 3310:3306 -v /www/server/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 --name mysql1 mysql:5.5

然后测试SQLyog连接远程服务器3310端口测试成功。然后在数据库中创建表test_q数据库

查看容器内部文件如图

Docker(2)

 具名挂载和匿名挂载

具名挂载就是挂载的同时指定一个有具体含义的名字,方便后续和容器对应以及后续的运维,便于查找挂载目录,匿名挂载就是指定容器内路径,dockers run 每挂载一个目录就会宿主主机自动创建一个随机字符串的目录。目录/var/lib/docker/volumes/随机字符串。

docker run -d -p 8000:80  --name nginxtest -v /etc/nginx nginx #匿名挂载
docker run -d -p 8001:80  --name nginxtest02 -v nginxtest02:/etc/nginx nginx #具名挂载
docker volume ls#查看容器数据卷

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/143110.html

(0)
飞熊的头像飞熊bm

相关推荐

发表回复

登录后才能评论
极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!