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、科大的镜像加速器地址。

※ 阿里云的镜像加速器地址获取

 

 

  启动Docker服务并加入开机自启动

systemctl start docker && systemctl enable docker

  查看状态

systemctl status docker

  查看Docker的版本信息

docker version

 

posted @ 2023-09-19 16:25  ~技术小白  阅读(26)  评论(0编辑  收藏  举报