Docker 为什么一定要sudo

这个sudo真是烦死人了,每次都要sudosudo,觉得浪费了我大量的时间。但是,当我学习到如何到如何可以不sudo、为什么要sudo之后,还是觉得sudo好一些吧,于是最后选择加一个环境变量,来节约时间。参考文章中给出了几个非常高水平的处理办法,我很喜欢,以后来学。
1. 如何免sudo实现Docker命令的运行
主要相关的文件在

$ ls -l /run|grep dock 

Alt text
可以看到,docker.sock这个文件的属主是docker,并且权限为660,这也是为什么必须sudo的原因了。
如果使用

sudo chgrp root docker.sock

Alt text

在redhat、centos这些默认是管理员账户的系统下,就可以直接docker+command了。 或者是把非root用户添加到docker用户组中,这样任何用户都可以直接docker了,但这个不太会…

  1. 为什么不能免密码使用docker命令?
    这个是有非常现实的问题:docker并不是足够安全的。 Docker命令没有内置的审计和日志功能,但是sudo有。Docker目前会记录事件,但是Docker daemon重启时事件会消失。Docker目前没有审计功能。
    我们为什么不允许非root用户在CentOS直接运行Docker命令

关于自己的方法:

$ sudo vim .zshrc

Alt text
之后每次输入 docker 就和 sudo docker 一样了。

Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐