CentOS 7 中安装 Docker和Docker Compose

本文介绍CentOS7系统安装Docker和Docker Compose的完整操作步骤

一、环境准备‌

验证系统内核版本:uname -r(需≥3.10)

更新系统软件包:sudo yum update -y‌

二、卸载旧版本

复制代码
sudo yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-engine -y

(若系统未安装旧版本会提示未找到包)‌

三,安装Docker

1**、安装依赖工具**

复制代码
sudo yum install -y yum-utils \
device-mapper-persistent-data \
lvm2

(为配置仓库和存储驱动提供支持)‌

‌2**、配置镜像源**

复制代码
# 使用阿里云镜像
sudo yum-config-manager \
--add-repo \
http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

(替代官方仓库提升下载速度)‌

‌3、安装Docker

复制代码
sudo yum install docker-ce docker-ce-cli containerd.io -y

(默认安装最新稳定版)‌

‌4、启动服务

复制代码
sudo systemctl start docker
sudo systemctl enable docker

(启动并设置开机自启)‌

5、验证安装

复制代码
sudo docker version
sudo docker run hello-world

**6、配置镜像加速(可选)**‌

  1. 创建配置文件:sudo mkdir -p /etc/docker

  2. 写入阿里云加速器配置:

    javascript 复制代码
    sudo tee /etc/docker/daemon.json <<-'EOF'
    {
      "registry-mirrors": ["https://<your-aliyun-mirror>.mirror.aliyuncs.com"]
    }
    EOF
  3. 重启服务:

    javascript 复制代码
    sudo systemctl daemon-reload && sudo systemctl restart docker

四、安装Docker Compose

  • ‌适用场景‌:若需通过YAML文件管理多容器应用(如同时部署Web服务、数据库、缓存等),建议安装Docker Compose以简化编排流程‌12。
  • ‌单容器需求‌:若仅需运行独立容器(如单服务测试),可不安装。

**1.**手动下载 Docker Compose

访问 Docker Compose GitHub Releases 页面,找到最新版本的下载链接。例如,最新版本是 v2.33.1,则下载链接为:

javascript 复制代码
sudo curl -L "https://github.com/docker/compose/releases/download/v2.33.1/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose

2. 赋予执行权限

下载完成后,赋予 docker-compose 可执行权限:

javascript 复制代码
sudo chmod +x /usr/local/bin/docker-compose

3. 创建软链接(可选)

为了能够在任何目录下直接使用docker-compose命令,创建一个软链接到/usr/bin目录

复制代码
sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose

4. 验证安装

检查是否安装成功:

javascript 复制代码
docker-compose --version

如果显示版本号(例如 Docker Compose version v2.23.0),说明安装成功。

5. 卸载(可选)

如果需要卸载 Docker Compose,执行以下命令:

javascript 复制代码
sudo rm /usr/local/bin/docker-compose
相关推荐
沫璃染墨2 小时前
从零入门计算机网络系列(十一):HTTP协议进阶——从重定向原理到GET/POST与Fiddler抓包
linux·服务器·开发语言·网络·c++·tcp/ip·html
是枚小菜鸡儿吖3 小时前
Home Assistant跨品牌智能家居教程:Docker部署、米家接入、vivo桥接与远程访问
docker·容器·智能家居
AI_Lab014 小时前
宝塔用了两年,有没有必要换成轻量方案?
linux·运维·服务器
by209994 小时前
Linux GDB 调试与 CGDB 使用
linux·运维·服务器·经验分享
星恒随风4 小时前
Linux网络编程:应用层协议究竟是什么?从网络计算器到TCP Socket抽象基类完整实现
linux·网络·笔记·tcp/ip
螺蛳粉 螺蛳粉6 小时前
第 02 篇:镜像分层与 containerd 2.x 实战:SystemdCgroup 与 pause 镜像配置踩坑(底座认知 02)
docker·云原生·容器·kubernetes·etcd·containerd·kube-apiserver
wefg17 小时前
【Docker】镜像相关指令
运维·docker·容器
feng_you_ying_li7 小时前
linux之网络层
linux·运维·网络
未来之窗软件服务7 小时前
Linux 运维日志删除的多种方式—东方仙盟
linux·运维·服务器·仙盟创梦ide·东方仙盟
小雉系统7 小时前
BcoreOS实战:用一个升级包,让Rocky Linux跑进Debian服务器
linux·运维·服务器·debian