docker技术入门与实践(二)

数据管理

容器中的数据管理主要有两种方式,数据卷(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为别名。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 转载自 http://blog.opskumu.com/docker.html 一、Docker 简介 Docke...
    极客圈阅读 10,776评论 0 120
  • docker 部署 标签(空格分隔): docker 系统centos6.8 mini docker 官方文档ht...
    Lisong阅读 763评论 0 1
  • 五、Docker 端口映射 无论如何,这些 ip 是基于本地系统的并且容器的端口非本地主机是访问不到的。此外,除了...
    R_X阅读 1,975评论 0 7
  • 在网上居然找不到这一关的攻略,忍痛用了叶子还是过不去,在想知道后面的故事情节的驱使下,自己反复尝试,终于过了这一关...
    阿曌阅读 1,338评论 0 0
  • 作业一要求: 参考范例: 我的作答: 作业二要求:重构上周实践案例,画重构图 重构作答:
    轻风吾爱阅读 355评论 0 0

友情链接更多精彩内容