docker-安装
使用官方安装脚本自动安装
curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun
YUM源方式安装
(使用CentOS 7演示)
1、安装基础包
yum install -y wget net-tools nfs-utils yum-utils lrzsz gcc gcc-c++ make cmake libxml2-devel openssl-devel curl curl-devel unzip sudo ntp libaio-devel ncurses-devel autoconf automake zlib-devel python-devel epel-release openssh-server socat ipvsadm conntrack
2、配置阿里云的docker镜像
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
(执行yum-config-manager
要保证 yum-utils已安装
)
3、安装Docker-CE
yum install docker-ce -y
4、修改内核参数
在Linux内核中加载br_netfilter模块,执行以下命令
modprobe br_netfilter
※ 在安装Docekr时,通常需要加载br_netfilter内核模块以确保Docker正常工作。该命令会在系统中查找并加载br_netfilter模块,使得Docker能够正常运行。在加载后,Docker会自动创建和配置网络设别,以便将容器内部的网络连接到宿主机上,而br_netfilter模块提供了必要的网络过滤功能,能够使Linux内核对网络数据包进行转发和过滤。
在Linux发行版中,br_netfilter模块可能未被默认加载,在这种情况下,必须手动加载该模块才能使Docker正常工作。因此,在安装Docker之前,需要确保该模块已经被正确加载到系统中。
5、配置内核参数
cat > /etc/sysctl.d/docker.conf <<EOF net.bridge.bridge-nf-call-ip6tables = 1 net.bridge.bridge-nf-call-iptables = 1 net.ipv4.ip_forward = 1 EOF
执行命令,使上面修改的内核参数生效:
sysctl -p /etc/sysctl.d/docker.conf
net.bridge.bridge-nf-call-ip6tables = 1
:这个参数启用了IPv6流量通过桥接接口的iptables过滤。这对于使用Docker桥接网络并希望对IPv6流量进行iptables规则过滤的场景是必要的。net.bridge.bridge-nf-call-iptables = 1
:这个参数启用了IPv4流量通过桥接接口的iptables过滤。类似地,如果你在使用Docker桥接网络并希望对IPv4流量进行iptables规则过滤,这个设置是必须的。net.ipv4.ip_forward = 1
:这个参数启用了IPv4转发。在Docker容器中,容器之间的网络通信(如使用Docker网络时)或容器与宿主机之间的网络通信,可能需要启用IP转发。注意,在某些情况下,仅启用这个设置可能不足以满足Docker网络的需求,还可能需要其他配置。
6、配置Docker镜像加速器
国内从Docker Hub拉取镜像有时会遇到困难,此时可以配置镜像加速器。Docker官方和国内很多云服务商都提供了国内加速器服务,举例如下:
- 科大镜像站点:https://Docker.mirrors.ustc.edu.cn/。
- 网易163镜像站点:https://hub-mirror.c.163.com/。
- 阿里云镜像站点:https://<你的阿里云镜像仓库ID>.mirror.aliyuncs.com
加速器配置具体步骤:
修改/etc/docker/daemon.json文件,加入如下内容:
{ "registry-mirrors":["https://你的阿里云加速器地址", "https://registry.docker-cn.com", "https://docker.mirrors.ustc.edu.cn"] }
上面分别是阿里云、Docker Hub、科大的镜像加速器地址。
※ 阿里云的镜像加速器地址获取
阿里云镜像加速器目前只限阿里云产品上才能使用
还有以下方案更加稳定:
1.如果预算充足可以购买阿里的企业版acr,支持订阅海外镜像: https://help.aliyun.com/zh/acr/user-guide/subscribe-to-image-tags?spm=a2c4g.11174283.0.i1
2.如果有自己的域名,可以参考这个开源案例部署自己的加速器: https://laziji.cc/article/cf
3.也可以使用这个白嫖案例: https://laziji.cc/article/docker
启动Docker服务并加入开机自启动
systemctl start docker && systemctl enable docker
查看状态
systemctl status docker
查看Docker的版本信息
docker version