美文网首页
docker技术入门与实践(二)

docker技术入门与实践(二)

作者: 书简的花果山 | 来源:发表于2017-12-21 09:52 被阅读18次

数据管理

容器中的数据管理主要有两种方式,数据卷(Data Volumes)和数据卷容器(Data Volume Containers)

数据卷

数据卷是一个可以供容器使用的特殊目录,可以使用类似mount方式挂载目录或文件.对挂接文件的修改会影响到文件的inode,导致容器运行异常,所以建议直接挂载目录的方式挂载数据卷

  • 数据卷可以在容器中共享和重用
  • 对数据卷的修改立即生效
  • 对数据卷更新不会影响镜像
  • 卷会一直存在,知道没有容器使用.

在docker run 的时候,可以使用-v标记在容器内创建一个数据卷,可以多个-v联合使用创建多个数据卷.
docker run -d -v /machine/webapp:/container/webapp -v /machine/webdata:/container/webdata
  就是将宿主机的machine下webapp,webdata映射到容器内部的container目录下的webapp和webdata

数据卷容器

容期间共享持续更新数据的最简单方式是使用数据卷容器.数据卷容器是一个普通的容器,专门为他提供了挂接到其他容器的方法.

1.创建数据卷容器
docker run -it -v /dbdata --name dbdata imagename
2.挂接数据卷容器
docker run -it --volumes-from dbdata --name db1 imagename
docker run -it --volumes-from dbdata --name db1 imagename
 --volumes-from 挂接dbdata中的数据卷
删除挂载的容器,如dbdata、db1、db2,数据卷不会自动删除,必须在删除最后一个挂载他的容器显示使用docker rm -v 命令来指定同时删除关联的容器。
数据卷可以备份、可以恢复。此部分待议。

网络基础配置

docker公开连接方式

环境变量
更新/etc/hosts文件

端口映射实现访问容器

从外部访问容器

docker run -it -p (127.0.0.1:)81:80 webapp
 将主机的指定的ip(127.0.0.1)和指定的端口(81)映射到容器的80端口。
docker run -it -p 127.0.0.1:80 webapp
 省略端口,则将对主机的任意端口访问都映射到容器的80端口。
docker run -it -p (127.0.0.1:)81:80/udp webapp
 指定udp通信协议

容器互联实现容器间通信

docker在两个互联的容器之间创建一个安全通道,不用映射到宿主机的端口上,相对安全。

docker run -d --name db dockerdb
docker run -d -P --name web --link db:db web
--link表示将2个容器连接起来,参数的格式为--link 容器id:alias,alias为别名。

相关文章

网友评论

      本文标题:docker技术入门与实践(二)

      本文链接:https://www.haomeiwen.com/subject/hoagwxtx.html