【Ubuntu下离线安装docker】

[复制链接]
发表于 2026-10-3 21:59:23 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

×

内网机器、或者根本连不上 Docker 官网的主机,没法直接装 Docker。本文给一条离线安装路线:在能上网的机器上按目标系统版本下载 deb 包,拷到目标机用 dpkg 装齐,再补一份镜像源配置,让容器镜像也能走国内加速拉下来。

为什么需要离线装

典型场景是政企内网、无外网出口的虚拟机,以及 Docker Hub 不可达的环境。解决办法不是放弃容器化,而是把安装介质提前准备好、离线搬运过去。

确认目标系统版本

在目标机(或同版本的源机器)上先看清发行版代号,后面拼下载路径要用它:

lsb_release -a

以 Ubuntu 22.04.4 LTS 为例,输出里关键几行是:

Distributor ID: Ubuntu
Description:    Ubuntu 22.04.4 LTS
Release:        22.04
Codename:       jammy

Codename 就是后面拼路径要用的 jammy。不同大版本代号不同(20.04 是 focal,24.04 是 noble),路径别照搬。

下载离线包

在能联网的机器上到官方 pool 目录按代号取包:

https://download.docker.com/linux/ubuntu/dists/jammy/pool/stable/amd64/

把 containerd.io、docker-ce、docker-ce-cli 这几个 deb 下全。注意按自己的 CPU 架构选,arm64 机器不要下 amd64 的包。

把包搬到目标机

目标机先补几样传输和编辑工具:

apt-get install openssh-server -y
apt-get install vim -y
apt-get install lrzsz -y

用 SSH 工具连上去,拿到管理员权限后建目录、传文件:

sudo su
mkdir /docker
cd /docker
# 把 deb 包放到 /docker 目录

安装

目录下所有 deb 一次性装齐,包之间的依赖会自动处理:

dpkg -i *.deb

补镜像源并启动

装完还拉不到镜像,得写 daemon.json 指定镜像加速器:

vim /etc/docker/daemon.json
{
  "registry-mirrors": [
    "https://ox288s4f.mirror.aliyuncs.com",
    "https://registry.docker-cn.com",
    "http://hub-mirror.c.163.com",
    "https://mirror.ccs.tencentyun.com",
    "https://dockerproxy.com",
    "https://mirror.baidubce.com",
    "https://ccr.ccs.tencentyun.com"
  ]
}

然后重载服务定义、重启 docker:

sudo systemctl daemon-reload
sudo systemctl restart docker

顺手做两件事

  • 设开机启动:sudo systemctl enable docker.service
  • 把当前用户补进 docker 组,省去每次敲 sudo:newgrp docker

容易踩的点

  • deb 包架构必须跟目标机一致,装到一半报依赖缺失,基本都是这里出问题。
  • 镜像源地址会随时间失效,某个源不通就换一个,不必强求全通。
  • daemon.json 是严格 JSON,末尾多一个逗号 docker 就起不来。

qidao123.com企服评测-应用市场 编辑提示

回复

使用道具 举报

登录后关闭弹窗

登录参与点评抽奖  加入IT实名职场社区
去登录
快速回复 返回顶部 返回列表