linux 安装docker和docker-compose

bash 复制代码
wget -nc https://mirrors.sustech.edu.cn/docker-ce/linux/static/stable/x86_64/docker-29.0.1.tgz

📦 第一步:解压安装包

解压安装包

首先,你需要将下载好的 .tgz 文件上传到你的 Linux 服务器中(例如放在 /root 或 /opt 目录下)。

1.执行解压命令:

.tgz 文件本质上是 tar 归档并用 gzip 压缩的文件。使用以下命令进行解压:

bash 复制代码
tar -zxvf docker-29.0.1.tgz
bash 复制代码
- `-z`: 表示解压 gzip 格式。
- `-x`: 表示解压操作。
- `-v`: 显示解压过程(可选)。
- `-f`: 指定文件名。

2. 检查解压结果:

解压成功后,当前目录下会出现一个名为 docker 的文件夹,里面包含了 dockerd, docker, containerd 等二进制可执行文件。

⚙️ 第二步:安装与配置

这一步是将 Docker 的二进制文件复制到系统路径中,并配置它作为一个系统服务(Service)来管理。

1. 复制二进制文件到系统目录

为了让系统能在任何路径下识别 docker 命令,我们需要将解压出的文件复制到 /usr/bin/ 目录。

bash 复制代码
cp docker/* /usr/bin/

2. 创建 Docker 服务配置文件

为了让 Docker 能够开机自启并被 systemctl 管理,我们需要创建一个服务配置文件。

  • 创建文件路径:/etc/systemd/system/docker.service
  • 执行命令(使用 vim 或 nano):
    代码
bash 复制代码
vim /etc/systemd/system/docker.service
  • 写入以下内容(你可以直接复制粘贴):
bash 复制代码
[Unit]
Description=Docker Application Container Engine
Documentation=https://docs.docker.com
After=network-online.target firewalld.service
Wants=network-online.target

[Service]
Type=notify
ExecStart=/usr/bin/dockerd
ExecReload=/bin/kill -s HUP $MAINPID
LimitNOFILE=infinity
LimitNPROC=infinity
TimeoutStartSec=0
Delegate=yes
KillMode=process
Restart=on-failure
StartLimitBurst=3
StartLimitInterval=60s

[Install]
WantedBy=multi-user.target

或者

bash 复制代码
sudo tee /etc/systemd/system/docker.service <<-'EOF'
[Unit]
Description=Docker Application Container Engine
Documentation=https://docs.docker.com
After=network-online.target firewalld.service
Wants=network-online.target

[Service]
Type=notify
ExecStart=/usr/bin/dockerd
ExecReload=/bin/kill -s HUP $MAINPID
LimitNOFILE=infinity
LimitNPROC=infinity
TimeoutStartSec=0
Delegate=yes
KillMode=process
Restart=on-failure
StartLimitBurst=3
StartLimitInterval=60s

[Install]
WantedBy=multi-user.target
EOF

3. 配置文件权限与重载

创建好配置文件后,我们需要给它添加执行权限,并通知 systemd 重新加载配置。

bash 复制代码
# 添加执行权限
chmod +x /etc/systemd/system/docker.service

# 重新加载 systemd 配置
systemctl daemon-reload

🚀 第三步:启动与验证

现在,Docker 已经部署完毕,我们可以启动它了。

1. 启动 Docker 服务:

bash 复制代码
systemctl start docker

设置开机自启:

bash 复制代码
systemctl enable docker

3. 验证是否安装成功:

运行以下命令查看 Docker 版本信息。如果看到输出了 Docker version 29.0.1,说明部署成功!

bash 复制代码
docker -v
# 或者查看更详细的信息
docker info
bash 复制代码
wget -O /usr/local/bin/docker-compose "https://github.com/docker/compose/releases/download/v2.40.3/docker-compose-$(uname -s)-$(uname -m)"
bash 复制代码
chmod +x /usr/local/bin/docker-compose
tail -f /dev/null
相关推荐
JZC_xiaozhong18 小时前
数据不互通、审批慢?企业多系统智能协同与流程自动化解决方案
运维·自动化·流程管理·流程自动化·数据集成与应用集成·流程监控·流程可视化设计
爱学习的小囧18 小时前
ESXi 8.0 原生支持 NVMe 固态硬盘吗?VMD 配置详解教程
linux·运维·服务器·esxi·esxi8.0
坚持就完事了19 小时前
Linux中的变量
linux·运维·服务器
hERS EOUS19 小时前
nginx 代理 redis
运维·redis·nginx
handler0119 小时前
从源码到二进制:深度拆解 Linux 下 C 程序的编译与链接全流程
linux·c语言·开发语言·c++·笔记·学习
Cat_Rocky19 小时前
利用Packet Tracer网络实验
linux·运维·服务器
嵌入式×边缘AI:打怪升级日志20 小时前
Linux 驱动实战:SR501 人体红外传感器驱动开发与调试全记录
linux·运维·驱动开发
正点原子20 小时前
【正点原子Linux连载】第三章 U-Boot使用 摘自【正点原子】ATK-DLRK3568嵌入式Linux驱动开发指南
linux·运维·驱动开发
Qbw200420 小时前
【Linux】进程地址空间
linux·c++
忍冬行者20 小时前
MongoDB 三节点副本集离线部署运维手册
运维·数据库·mongodb