A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© sunyakai 中级黑马   /  2018-12-27 14:41  /  1124 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

docker的基本命令格式:
#基本格式
systemctl [参数] docker
#参数详解:
    start         开启服务
    stop          关闭
    restart       重启
    status        状态
删除docker命令:
$  sudo apt-get purge docker-ce -y
$  sudo rm -rf /etc/docker
$  sudo rm -rf /var/lib/docker/docker基本目录简介:
/etc/docker/                #docker的认证目录
/var/lib/docker/            #docker的应用目录
docker常见问题:背景
​        因为使用的是sudo安装docker,所以会导致一个问题。以普通用户登录的状况下,在使用docker images时必须添加sudo,那么如何让docker免sudo依然可用呢?
理清问题
​        当以普通用户身份去使用docker命令时,出现以下错误:

Got permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Post http://%2Fvar%2Frun%2Fdocker.sock/v1.35/images/create?fromSrc=-&message=&repo=ubuntu-16.04&tag=: dial unix /var/run/docker.sock: connect: permission denied
​        可以看都,最后告知我们时权限的问题。那么在linux文件权限有三个数据左右drwxrwxrwx,其中第一为d代表该文件是一个文件夹前三位、中三位、后三位分别代表这属主权限、属组权限、其他人权限。
file://C:/Users/Administrator/Desktop/课程文档/assets/dockersock%E6%9D%83%E9%99%90.png?lastModify=1545892759
​        上图是报错文件的权限展示,可以看到其属主为root,权限为rw,可读可写;其属组为docker,权限为rw,可读可写。如果要当前用户可直接读取该文件,那么我们就为docker.sock 添加一个其他用户可读写权限 或者添加1个用户组就可以了
方法1:一劳永逸
#如果还没有 docker group 就添加一个:
$sudo groupadd docker
#将用户加入该 group 内。然后退出并重新登录就生效啦。
$sudo gpasswd -a ${USER} docker
#重启 docker 服务
$systemctl restart docker
#切换当前会话到新 group 或者重启 X 会话
$newgrp - docker
#注意:最后一步是必须的,否则因为 groups 命令获取到的是缓存的组信息,刚添加的组信息未能生效,
#所以 docker images 执行时同样有错。方法2:
#每次启动docker或者重启docker的之后
$cd /var/run
$sudo chmod 666 docker.sock方法3:每条命令前面加上sudo

下一章节:docker的核心命令



0 个回复

您需要登录后才可以回帖 登录 | 加入黑马