前提
确保docker支持当前系统版本,docker支持centos 7及以上版本,要求Linux内核版本不低于3.10
cat /etc/redhat-release #查看系统版本
查看内核版本三种方式
cat /proc/version
uname -a
uname -r
一、安装docker
0、卸载docker(根据需要执行)
yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-selinux \
docker-engine-selinux \
docker-engine \
docker-ce
1、确保虚拟机联网
centos安转完不能连网怎么解决
2、安装软件包(包、仓库、依赖管理器)
#yum-utils提供了yum-config-manager,并且device mapper存储驱动程序需要device-mapper-persistent-data和lvm2
yum install -y yum-utils
yum install -y device-mapper-persistent-data
yum install -y lvm2
3、设置docker仓库
#使用yum-config-manager命令(上一步安装的)
yum-config-manager —add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
4、安装社区版docker
yum install -y docker -ce / yum --config=/etc/yum.conf install docker-ce
等待安装完成,使用docker -v查看docker版本
二、使用docker
1、关闭防火墙
#由于docker需要用到很多端口
systemctl stop firewalld
systemctl disable firewalld #禁止开机自启
systemctl status firewalld #查看是否关闭防火墙
2、启动docker服务
systemctl start docker
systemctl stop docker #停止
systemctl restart docker #重启
3、配置docker镜像加速
Docker配置阿里镜像加速源,超详细_docker 加速源_神奇的海马体的博客-CSDN博客
mkdir -p /etc/docker && cd /etc/docker
vi daemon.json
{
"registry-mirrors": [
"https://docker.mirrors.ustc.edu.cn"
]
}systemctl daemon-reload #重新加载文件
systemctl restart docker #重启docker
过程中遇到的问题及解决方法
Q:执行 yum-config-manager —add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo 报错 /usr/lib/python2.7/site-packages/yum/misc.py:133: UnicodeWarning: Unicode equal comparison failed to convert both arguments to Unicode - interpreting them as being unequal return lambda s: s.lower() == pat
A:由于 Python 2.7 版本对 Unicode 字符处理的问题导致的。在 Python 2.7 中,当进行 Unicode 字符比较时,如果其中一个字符无法转换为 Unicode,则会引发 UnicodeWarning。
为了解决这个问题,你可以尝试以下方法:
1、在命令行中设置环境变量:在运行 yum-config-manager
命令之前,在命令行中设置 PYTHONWARNINGS="ignore:UnicodeWarning"
环境变量,例如:
PYTHONWARNINGS="ignore:UnicodeWarning" yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
这将临时禁用 Unicode 警告,使命令可以正常执行。
2、使用 Python 3 运行 yum-config-manager
:如果你的系统上同时安装了 Python 2 和 Python 3,可以尝试使用 Python 3 来运行 yum-config-manager
命令。例如:
python3 -m yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
这样可以避免 Python 2.7 的 Unicode 处理问题。
Q:docker pull image_name 报错 Error response from daemon: pull access denied for python3, repository does not exist or may require 'docker login': denied: requested access to the resource is denied
A:docker info 查看 registry_url 然后登录docker
docker login <registry_url> --username <username> --password <password>
Centos7配置Docker镜像加速器(报错Error response from daemon: pull access denied for centos7, repository does )_小于同学不想卷的博客-CSDN博客
docker拉取镜像时报错:docker: Error response from daemon: Get “https://registry-1.docker.io/v2/“: dial tcp:_王祺灏的博客-CSDN博客
最终使用该方式解决:修改文件 vi /etc/resolv.conf
注释掉:nameserver 192.168.100.2
新增DNS:nameserver 114.114.114.114 nameserver 8.8.8.8