使用Dockerfile构建的容器, 无法看到非root用户运行程序的PID,如下图所示:

image.png

百度上说是netstat的bug,看起来却像是权限问题,最后Google找到了,docker为了容器的安全,容器中的root权限有限制,与宿主机上root权限是不一样的,启动容器加上--cap-add=SYS_PTRACE,即可看到PID,官网上也有相关解释。

Runtime privilege and Lin...

Continue reading >>

1.Dockerfile生产实践

  •  分层设计

    根据Docker的分层理念及公司业务环境,生产中使用分层设计Dockerfile并使用git来管理,可以大大提高应用部署效率,同时可以使用docker-compose来编排启动容器,swarm管理规模不大的docker集群,有条件的公司也可使用k8s、mesos来管理。

QQ截图20170312171850.jpg

          &nb...

Continue reading >>

1.Docker分层管理概念

Dokcer镜像采用分层来管理(以下图为例):

  • 最下层是操作系统kernel层

  • 第二层是只读的镜像层

  • 通过第二层只读的镜像层启动了一个可读写的容器,对容器的所有操作都只会在这个可写层

  • 如果想让可写层永久生效,就需要提交成一个镜像。如你在容器里安装apache,想让它永久生效,你只需将其提交成镜像及可

  • 用封装了apache的镜像启动一个容器,第五层就又是一个可写层,如果你之前下载的...

Continue reading >>