参考资料:
1.博客1:https://www.jianshu.com/p/d645e2ed4bb1
使用docker的时候有一些常见问题:
docker权限问题:一般输入docker命令前面都要加sudo,否则会出现下面的错误:
一般的解决方法是,
1.切换到root用户,问题是,切换后输入docker的命令tab命令就没有提示了:
2.每次输入命令前加上sudo,但是本人又觉得这样很麻烦。。。
因此我觉得需要在既可以有命令提示,又避免输入sudo,这就需要把添加当前用户到docker组,让当前用户有权限对docker进行操作
1.查看docker组中用户列表
sudo cat /etc/group | grep docker
最后一个 : 后面表示为docker组中的用户列表, 如果没有当前用户名, 则需要将当前用户加入docker组当中
2.添加当前用户到docker组
这里可以写echo ${USER}看看当前用户名是啥
sudo gpasswd -a ${USER} docker
3.重启docker服务
sudo service docker restart
4.如果提示socket文件权限不足, 则给 .sock 文件增加如下权限
sudo chmod a+rw /var/run/docker.sock
5.重启docker服务
sudo service docker restart
6.下次输入docker命令可能还有问题,切换到当前用户即可
su ${USER}
另一个问题:
查看docker容器的日志直接可以通过命令去查看,但是仅限于查看有限条或者实时查看,
其实我们可以在宿主机内直接看容器内部的全部日志:
1.进入docker在宿主机上的路径
cd /var/lib/docker
2.输入命令sudo su, 切换到root用户(否则会报权限不够的错误),注意这里有一个containers文件夹
3.通过命令docker ps -a得到容器id,对应的containers文件夹下一定有这个容器id开头的文件夹,再进入,可以得到xx-json.log的日志文件
4.查看该日志vi xx-json.log
......