1、在下载镜像的时候速度非常慢,最后镜像下载失败,报“net/http: TLS handshake timeout”的错误
解决方法:
echo “DOCKER_OPTS=”$DOCKER_OPTS --registry-mirror=http://f2d6cb40.m.daocloud.io"" | tee -a /etc/default/docker
service docker restart
2、Docker使用-v挂载主机目录到容器后出现Permission denied
问题原因及解决
原因是CentOS7中的安全模块selinux把权限禁掉了,至少有以下三种方式解决挂载的目录没有权限的问题:
2.1在运行容器的时候,给容器加特权,也就是加上 --privileged=true 参数:
如下运行容器则无此问题:
docker run -it -v /root/software/:/mnt/software/ --privileged=true 25c5298b1a36 /bin/bash
2.2临时关闭selinux:
setenforce 0
2.3 添加selinux规则,改变要挂载的目录的安全性文本
更改安全性文本的格式如下
chcon [-R] [-t type] [-u user] [-r role] 文件或者目录
选顷不参数:
-R :连同该目录下的次目录也同时修改;
-t :后面接安全性本文的类型字段!例如 httpd_sys_content_t ;
-u :后面接身份识别,例如 system_u;
-r :后面街觇色,例如 system_r
根据格式我们需要更改/root/software的安全性文档
chcon -Rt svirt_sandbox_file_t /root/software