Docker的安装和配置(Centos7)

安装docker的时候,我们最终都是想安装kubernetes。而安装kubernetes的时候,需要安装kubelet, kubeadm等包,但k8s官网给的yum源是packages.cloud.google.com,国内访问不了,此时我们可以使用阿里云的yum仓库镜像。

1
2
3
4
5
6
7
8
9
10
cat <<EOF > /etc/yum.repos.d/kubernetes.repo
[kubernetes]
name=Kubernetes
baseurl=http://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64
enabled=1
gpgcheck=0
repo_gpgcheck=0
gpgkey=http://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg
http://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg
EOF

Docker的安装

在执行命令之前,先切换到root用户。

安装docker-ce

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
# 卸载旧版本Docker软件
sudo yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-selinux \
docker-engine-selinux \
docker-engine \
container*
# 定义安装版本
export docker_version=18.06.3
# step 1: 安装必要的一些系统工具
sudo yum update -y;
sudo yum install -y yum-utils device-mapper-persistent-data \
lvm2 bash-completion;
# Step 2: 添加软件源信息
sudo yum-config-manager --add-repo \
http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo;
# Step 3: 更新并安装 Docker-CE
sudo yum makecache all;
version=$(yum list docker-ce.x86_64 --showduplicates | sort -r|grep ${docker_version}|awk '{print $2}');
sudo yum -y install --setopt=obsoletes=0 docker-ce-${version} docker-ce-selinux-${version};
# 如果已经安装高版本Docker,可进行降级安装(可选)
yum downgrade --setopt=obsoletes=0 -y docker-ce-${version} docker-ce-selinux-${version};

启动docker

1
2
3
4
# 设置开机启动
systemctl enable docker
# 启动docker
systemctl restart docker

相关配置

配置证书(可选)

公司内网仓库需要配置证书才允许访问。

1
2
mkdir -p /etc/docker/certs.d/e-registry.yfb.sunline.cn
curl -L http://e-proxy.yfb.sunline.cn/repos/registry/e-ca.crt > /etc/docker/certs.d/e-registry.yfb.sunline.cn/ca.crt

docker的deamon配置

配置镜像仓库的拉取地址等相关信息。镜像仓库中有公司的仓库:https://e-registry.yfb.sunline.cn,需要改为自己公司的仓库地址,或者去掉。

创建文件:/etc/docker/daemon.json

1
2
3
4
5
6
7
8
9
10
11
12
13
{
"registry-mirrors": ["https://c6s6uk2t.mirror.aliyuncs.com","https://e-registry.yfb.sunline.cn"],
"insecure-registries" : ["e-registry.yfb.sunline.cn"],
"max-concurrent-downloads": 3,
"max-concurrent-uploads": 5,
"storage-driver": "overlay2",
"storage-opts": ["overlay2.override_kernel_check=true"],
"log-driver": "json-file",
"log-opts": {
"max-size": "100m",
"max-file": "3"
}
}

最后,相关配置完成后,记得重启docker

1
systemctl restart docker

查看是否安装完毕:

1
docker version

-w515

运行nginx容器,查看是否安装正确

1
docker run -d -p 8080:80 nginx

访问容器的ip+监听端口:http://172.168.1.10:8080/
-w632
代表启动成功。