【Docker + DockerCompose】安装步骤+演示

介绍

本文通过VMware WorkStation虚拟机里配置的CentOS 7系统安装Docker和Docker Compose。

通过MobaXterm进行虚拟机系统的远程连接。

详细步骤

一、连接虚拟机

1.输入ifconfig查看虚拟机地址

2.通过MobaXterm连接虚拟机

输入用户名和密码后连接成功:

二、安装Docker

1.卸载旧版本(如果有)
bash 复制代码
sudo yum remove docker docker-client docker-client-latest docker-common docker-latest docker-latest-logrotate docker-logrotate docker-engine
2.安装yum依赖

这里使用国内腾讯源安装:

a.备份原有 repo 文件

bash 复制代码
mkdir -p /etc/yum.repos.d/bak
mv /etc/yum.repos.d/*.repo /etc/yum.repos.d/bak/

b.下载腾讯云的 CentOS 7 归档源

bash 复制代码
curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.cloud.tencent.com/repo/centos7_base.repo

c. 清理缓存并生成新缓存

bash 复制代码
yum clean all
yum makecache

d. 安装yum

bash 复制代码
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
3.添加 Docker 官方仓库
bash 复制代码
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
4.安装 Docker CE

这里使用国内 Docker 源镜像

a. 备份原有 Docker 仓库配置

bash 复制代码
mv /etc/yum.repos.d/docker-ce.repo /etc/yum.repos.d/docker-ce.repo.bak 2>/dev/null

b. 使用阿里云 Docker 仓库

创建新的 repo 文件:

bash 复制代码
vi /etc/yum.repos.d/docker-ce.repo

粘贴以下内容(阿里云 Docker CE 仓库):

bash 复制代码
[docker-ce-stable]
name=Docker CE Stable - $basearch
baseurl=https://mirrors.aliyun.com/docker-ce/linux/centos/7/$basearch/stable
enabled=1
gpgcheck=1
gpgkey=https://mirrors.aliyun.com/docker-ce/linux/centos/gpg

[docker-ce-stable-debuginfo]
name=Docker CE Stable - Debuginfo $basearch
baseurl=https://mirrors.aliyun.com/docker-ce/linux/centos/7/debug-$basearch/stable
enabled=0
gpgcheck=1
gpgkey=https://mirrors.aliyun.com/docker-ce/linux/centos/gpg

[docker-ce-stable-source]
name=Docker CE Stable - Sources
baseurl=https://mirrors.aliyun.com/docker-ce/linux/centos/7/source/stable
enabled=0
gpgcheck=1
gpgkey=https://mirrors.aliyun.com/docker-ce/linux/centos/gpg

保存并退出(ESC:wq

c. 导入 GPG 密钥

bash 复制代码
rpm --import https://mirrors.aliyun.com/docker-ce/linux/centos/gpg

d. 清理并重建缓存

bash 复制代码
yum clean all
yum makecache

e. 安装 Docker

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

f. 配置 Docker 镜像加速(可选,推荐)

下方命令一起粘贴执行即可:

bash 复制代码
mkdir -p /etc/docker
tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["https://docker.m.daocloud.io", "https://hub-mirror.c.163.com", "https://mirror.baidubce.com"]
}
EOF

重启 Docker 服务:

bash 复制代码
systemctl daemon-reload
systemctl restart docker
5.启动 Docker 并设置开机自启
bash 复制代码
sudo systemctl start docker
sudo systemctl enable docker
6. 验证安装
bash 复制代码
docker --version

安装完毕!!!

三、 安装Docker Compose

1.下载 Docker Compose 二进制文件
bash 复制代码
sudo curl -L "https://mirrors.aliyun.com/docker-toolbox/linux/compose/v2.20.3/docker-compose-Linux-x86_64" -o /usr/local/bin/docker-compose

如果这个下载的不全,只有html输出无法运行:可以考虑更换镜像源或创建一个 "伪命令" 脚本

**容器化安装-->**创建一个 "伪命令" 脚本(让 docker-compose 命令可用)

创建一个脚本文件,替代传统的二进制文件,本质是调用 Docker 容器执行命令:

bash 复制代码
sudo tee /usr/local/bin/docker-compose <<-'EOF'
#!/bin/sh
exec docker run --rm \
  -v /var/run/docker.sock:/var/run/docker.sock \
  -v "$PWD:$PWD" \
  -w "$PWD" \
  docker/compose:1.29.2 "$@"
EOF

或最新版本:

bash 复制代码
sudo tee /usr/local/bin/docker-compose <<-'EOF'
#!/bin/sh
exec docker run --rm \
  -v /var/run/docker.sock:/var/run/docker.sock \
  -v "$PWD:$PWD" \
  -w "$PWD" \
  docker/compose:latest "$@"
EOF

以上两种方式后续操作都一样,只是下载安装方式不同!!!

2. 赋予执行权限
bash 复制代码
sudo chmod +x /usr/local/bin/docker-compose
3. 创建软链接

确保系统能找到命令

bash 复制代码
sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose
4. 验证安装
bash 复制代码
docker-compose --version

安装成功!!

相关推荐
sg_knight1 小时前
Docker 实战:如何限制容器的内存使用大小
java·spring boot·spring·spring cloud·docker·容器·eureka
电棍2331 小时前
在docker a100云服务器运行vulkan->sapien->robotwin的经验(报错segmentation fault)
运维·docker·容器
MichaelCoCoQ6 小时前
Zabbix监控K8S的PV卷
容器·kubernetes·负载均衡·zabbix·运维开发
似水流年 光阴已逝6 小时前
k8s中的StatefulSet 控制器
云原生·容器·kubernetes
chen_note6 小时前
K8s的标签应用和调度
云原生·容器·kubernetes·标签·污点与容忍度
墨倾许6 小时前
《Windows 11 + Docker:极简DVWA靶场搭建全记录》—— 附详细排错指南与最终解决方案
windows·笔记·网络安全·docker·容器·靶场
岚天start6 小时前
解决方案—K8S集群的日志按天并按照命名空间分类定时同步到日志服务器
服务器·docker·kubernetes·shell·日志备份
微学AI7 小时前
内网穿透的应用-摆脱局域网!Stable Diffusion3.5 结合cpolar使用更方便
docker·stable diffusion·内网穿透
梁萌7 小时前
linux中使用docker安装MySQL
linux·运维·docker·容器·mysql安装
晨晖28 小时前
docker打包,启动java程序
java·docker·容器