linux离线安装docker


xiaoxiaosun
小小孙 发布于 2025-06-08 / 24 阅读 / 0 评论 /

在Linux系统中,离线安装Docker通常发生在以下情况:

网络限制:在某些部署环境下,由于网络限制或防火墙设置,可能无法直接从Docker的官方仓库在线安装Docker。

安全性考虑:有些环境出于安全考虑,不允许直接访问外部网络,因此需要通过离线方式安装和更新软件。

稳定性需求:对于需要高度稳定性的系统,离线安装可以确保Docker的版本与系统的其他组件兼容,避免在线更新带来的潜在风险。

下面我们看下具体的操作方法。

离线手动安装

本文章安装的包为:docker-20.10.9

1.复制docker-20.10.9.tgz到服务器上,解压

下载地址:https://gitcode.com/Premium-Resources/8c866/?utm_source=article_gitcode_universal&index=bottom&type=card
tar -zxvf docker-20.10.9.tgz

2.复制到指定目录

将解压docker目录下所有文件复制到/usr/bin目录下,目的/user/bin是环境变量目录

mv docker/* /usr/bin/

3.编辑配置文件

vim /etc/systemd/system/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

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

4.修改执行权限

chmod +x /etc/systemd/system/docker.service
systemctl daemon-reload

5.设置开机启动

systemctl enable docker.service

6.启动docker

systemctl start docker

7.验证

docker -v

使用脚本离线自动安装docker方法

将安装包上传后,与脚本放同一目录里

#!/bin/bash
# 安装Docker脚本

set -e # 一旦脚本中有命令执行失败(返回值非零),则立即退出

# 检查是否使用root用户运行脚本
if [[ $EUID -ne 0 ]]; then
    echo "此脚本必须以root用户身份运行"
    exit 1
fi

# 解压Docker包
echo "解压Docker包..."
tar -xvf docker-20.10.9.tgz

# 更改Docker文件夹及其内容的权限
echo "更改Docker文件夹权限..."
chmod 755 -R docker/

# 将Docker可执行文件复制到/usr/bin/目录
echo "复制Docker可执行文件到系统目录..."
cp docker/* /usr/bin/

# 定义Docker服务文件内容
docker_service_content='
[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
'

# 创建Docker服务文件
echo "创建Docker服务文件..."
echo "$docker_service_content" | tee /etc/systemd/system/docker.service > /dev/null

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

# 启用Docker服务
echo "启用Docker服务..."
systemctl enable docker.service

# 启动Docker服务
echo "启动Docker服务..."
systemctl start docker

echo "Docker安装完成!"

使用上述脚本

vim  docker-install.sh
复制上述脚本
chmod a+x  docker-install.sh
./docker-install.sh

在线安装

curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun

也可以使用国内的

curl -sSL https://get.daocloud.io/docker | sh



是否对你有帮助?

评论