Linux-CentOS_7.x上安装Docker ( 在线&离线)

本文详细介绍了在CentOS系统上安装Docker的两种方法,包括在线安装与离线安装流程,以及如何设置镜像加速和自动启动Docker服务。同时,提供了Docker服务配置的详细步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

前言

Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器或Windows 机器上,也可以实现虚拟化,容器是完全使用沙箱机制,相互之间不会有任何接口。

方法 / 步骤

1. 查看系统版本

cat /etc/redhat-release

显示:
在这里插入图片描述
在 CentOS 7安装docker要求系统为64位、系统内核版本为 3.10 以上,可以使用以下命令查看

uname -r

在这里插入图片描述

二. 用yum源安装

2.1 查看是否已安装docker列表

yum list installed | grep docker

如果已经安装,显示:

--------------------------------------
 docker.x86_64,
 docker-client.x86_64,
 docker-common.x86_64 
--------------------------------------

.- 可以删除安装的软件包

yum -y remove docker.x86_64                        
yum -y remove docker-client.x86_64                  
yum -y remove docker-common.x86_64

2.2 安装docker

# 查看docker 列表
yum list docker-ce --showduplicates | sort -r
# 安装yum 工具
yum install -y yum-utils
# 切换yum仓库
sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
# 安装docker指定版本 (推荐) 笔者centOS 7.9 安装 docker-ce-17.12.1.ce
yum -y install docker-ce-17.12.1.ce

# 安装docker默认版本(不推荐)
yum -y install docker

-y表示不询问安装,直到安装成功,安装完后再次查看安装列表

在这里插入图片描述

在这里插入图片描述

2.3 启动docker

systemctl start docker

2.4 查看docker服务状态

systemctl status docker

在这里插入图片描述
以上说明docker安装成功

三. 离线安装模式

3.1 安装包官方地址

可以先下载到本地,然后通过ftp工具上传到服务器上,或者在服务器上使用命令下载

wget https://download.docker.com/linux/static/stable/x86_64/docker-18.06.3-ce.tgz

3.2 解压

tar -zxvf docker-18.06.3-ce.tgz

3.3 将解压出来的docker文件复制到 /usr/bin/ 目录下

cp docker/* /usr/bin/

3.4 在/etc/systemd/system/目录下新增docker.service文件,

touch docker.service

内容如下,这样可以将docker注册为service服务

[Unit]
Description=Docker Application Container Engine
Documentation=https://docs.docker.com
After=network-online.target firewalld.service
Wants=network-online.target
  
[Service]
Type=notify
# the default is not to use systemd for cgroups because the delegate issues still
# exists and systemd currently does not support the cgroup feature set required
# for containers run by docker
ExecStart=/usr/bin/dockerd --selinux-enabled=false --insecure-registry=127.0.0.1
ExecReload=/bin/kill -s HUP $MAINPID
# Having non-zero Limit*s causes performance problems due to accounting overhead
# in the kernel. We recommend using cgroups to do container-local accounting.
LimitNOFILE=infinity
LimitNPROC=infinity
LimitCORE=infinity
# Uncomment TasksMax if your systemd version supports it.
# Only systemd 226 and above support this version.
#TasksMax=infinity
TimeoutStartSec=0
# set delegate yes so that systemd does not reset the cgroups of docker containers
Delegate=yes
# kill only the docker process, not all processes in the cgroup
KillMode=process
# restart the docker process if it exits prematurely
Restart=on-failure
StartLimitBurst=3
StartLimitInterval=60s
  
[Install]
WantedBy=multi-user.target

此处的–insecure-registry=127.0.0.1(此处改成你私服ip)设置是针对有搭建了自己私服Harbor时允许docker进行不安全的访问,否则访问将会被拒绝。

3.5 启动docker

给docker.service文件添加执行权限

chmod +x /etc/systemd/system/docker.service 

重新加载配置文件(每次有修改docker.service文件时都要重新加载下)

systemctl daemon-reload                

启动

systemctl start docker

设置开机启动

systemctl enable docker.service

查看docker服务状态

systemctl status docker

在这里插入图片描述
上图表示docker已安装成功

三. 设置镜像加速

进入阿里云镜像加速器

在这里插入图片描述
针对Docker客户端版本大于 1.10.0 的用户
您可以通过修改daemon配置文件/etc/docker/daemon.json来使用加速器

sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
  "debug":false,
  "experimental":false,
  "features":{
      "buildkit":true
  },
  "insecure-registries":[

  ],
  "registry-mirrors":[
      "https://u2v98cer.mirror.aliyuncs.com",
      "https://docker.mirrors.ustc.edu.cn",
      "https://registry.docker-cn.com"
  ],
  "exec-opts":[
      "native.cgroupdriver=systemd"
  ]
}
EOF


sudo systemctl daemon-reload
sudo systemctl restart docker

四. 设置自动启动

systemctl enable docker.service

# 查看docker是否开机启动   
# docker.service  enabled 已经开机启动
systemctl list-unit-files | grep docker


# 设置容器自启
docker update --restart=always 容器名称

在这里插入图片描述
在这里插入图片描述

参考资料 & 致谢

【1】linux 安装docker
【2】Docker服务启动报错:Job for docker.service failed because the control process exited with error
【3】安装docker后启动报错

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

OxYGC

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值