centos7:离线安装docker

文章目录


centos7:离线安装docker

一、查看centos7的版本和架构

powershell 复制代码
# 查看 CentOS 7 的具体版本
cat /etc/redhat-release
# 输出为:CentOS Linux release 7.4.1708 (Core)

# 查看架构
uname -m
# 输出为:x86_64

二、下载docker二进制静态二进制文件

官网:https://download.docker.com/linux/static/stable/

三、上传并解压到服务器

powershell 复制代码
# 进入上传目录
cd /root

# 解压(请将<VERSION>替换为你下载的实际版本,如 docker-25.0.5.tgz)
tar -xzvf docker-<VERSION>.tgz

# 查看解压出的文件
ls docker/

四、将二进制文件复制到系统目录

powershell 复制代码
# 复制所有Docker二进制文件到 /usr/bin/
sudo cp docker/* /usr/bin/

# 验证主要命令是否存在
docker --version
dockerd --version

五、配置Docker系统服务(关键步骤)

创建服务配置文件

powershell 复制代码
sudo vim /etc/systemd/system/docker.service

将以下内容粘贴到文件中:

powershell 复制代码
[Unit]
Description=Docker Application Container Engine
Documentation=https://docs.docker.com
After=network-online.target firewalld.service
Wants=network-online.target

[Service]
Type=notify
# 默认情况下不使用systemd管理cgroup,因为系统不支持或cgroup版本不匹配
ExecStart=/usr/bin/dockerd
ExecReload=/bin/kill -s HUP $MAINPID
TimeoutSec=0
RestartSec=2
Restart=always

# 注意:在Systemd 229中,StartLimit*选项已从"infinity"移至"0"以禁用速率限制
StartLimitBurst=3

# 注意:设置StartLimitIntervalSec为0时,速率限制无效
StartLimitInterval=60s

# 由于内核记帐开销,限制支持的最大文件数
LimitNOFILE=infinity
LimitNPROC=infinity
LimitCORE=infinity

# 如果您的systemd版本支持,则取消注释TasksMax
# TasksMax=infinity

# 设置委托yes,以便systemd不会重置Docker容器的cgroup
Delegate=yes

# 仅终止Docker进程,而不终止cgroup中的所有进程
KillMode=process
OOMScoreAdjust=-500

[Install]
WantedBy=multi-user.target

六、启动并启用Docker服务

powershell 复制代码
# 重新加载systemd配置
sudo systemctl daemon-reload

# 启动Docker
sudo systemctl start docker

# 设置开机自启
sudo systemctl enable docker

# 查看状态
sudo systemctl status docker

七、卸载步骤

powershell 复制代码
# 停止服务
sudo systemctl stop docker
sudo systemctl disable docker
# 删除二进制文件
sudo rm -f /usr/bin/docker /usr/bin/dockerd /usr/bin/docker-init /usr/bin/docker-proxy /usr/bin/containerd*
# 删除服务文件
sudo rm -f /etc/systemd/system/docker.service
sudo systemctl daemon-reload
相关推荐
Zfox_11 小时前
CANN Catlass 算子模板库深度解析:高性能 GEMM 融合计算、Cube Unit Tiling 机制与编程范式实践
docker·云原生·容器·eureka
威迪斯特11 小时前
CentOS图形化操作界面:理论解析与实践指南
linux·运维·centos·组件·图形化·桌面·xserver
一方热衷.11 小时前
在线安装对应版本NVIDIA驱动
linux·运维·服务器
独自归家的兔11 小时前
ubuntu系统安装dbswitch教程 - 备份本地数据到远程服务器
linux·运维·ubuntu
ONE_SIX_MIX12 小时前
ubuntu 24.04 用rdp连接,桌面黑屏问题,解决
linux·运维·ubuntu
龙飞0512 小时前
Systemd -systemctl - journalctl 速查表:服务管理 + 日志排障
linux·运维·前端·chrome·systemctl·journalctl
春日见12 小时前
如何创建一个PR
运维·开发语言·windows·git·docker·容器
DARLING Zero two♡12 小时前
告别 Docker 命令行!Portainer+cpolar 让容器管理从局域网走向公网
运维·docker·容器
消失的旧时光-194312 小时前
Linux 编辑器入门:nano 与 vim 的区别与选择指南
linux·运维·服务器
斯普信专业组12 小时前
构建基于MCP的MySQL智能运维平台:从开源服务端到交互式AI助手
运维·mysql·开源·mcp