11、docker安全
proc未被隔离,所以在容器内和宿主机上看到的东西是一样的
容器资源控制
cpu资源限制
top命令,查看cpu使用率
ctrl+pq防止退出回收,容器会直接调用cgroup,自动创建容器id的目录
cpu优先级设定
测试时只保留一个cpu核心可用,只有在争抢cpu资源时优先级才会生效
激活cpu
内存资源限制
将进程和x1控制器相关联
由于只给了300M内存,多出的100M会写入到交换分区(swap)中,在删掉后空间将会释放
控制用户内存
磁盘io控制
12、docker安全加固
lxcfs隔离工具
默认容器内的用户是受限的
开启容器特权
设置容器白名单(仅控制网络)
其他安全加固的思路
最后,还是从容器的镜像、仓库、网络、数据卷和安全五个方面简单的对docker做一个描述性总结:
首先,镜像就像是你想玩一个游戏,需要先下载一个安装包。Docker镜像就是一个游戏的安装包,可以帮助你快速构建出一个运行游戏的运行环境。而且它还能实现多进程并发运行,不同的游戏进程可以在同一台机器上同时运行。
接下来是Docker仓库,它就像是一个存放游戏安装包的地方。你可以把镜像上传到仓库中保存起来,这样别人就可以直接从仓库中下载使用你的镜像,而不需要从头开始构建。
再来说说Docker网络,这个比较复杂。你可以把它理解成一条高速公路,不同的容器可以在这条公路上快速通信。这样你就可以构建出复杂的网络拓扑结构,实现负载均衡、高可用性等高级功能。
接着是Docker数据卷,这个就像是一个硬盘分区,可以把数据存储在这里。你可以把数据卷映射到本地文件系统上,这样就可以很方便地备份、迁移数据了。而且不同的容器可以共享同一个数据卷,实现数据共享。
最后是Docker安全,这个就比较简单了。它提供了一些安全机制,比如用户权限控制、加密通信等。这样就可以保护你的容器免受攻击和数据泄露等风险了。
总的来说,Docker是一个非常强大的工具,可以帮助你快速构建、部署和运行应用程序。