当前位置: 首页 > news >正文

ubuntu离线安装docker

在有网络的环境中准备离线安装包

可以浏览器访问Docker下载目录进行下载(各个目录对应版本关系):
在这里插入图片描述
也可以通过命令行方式(以下是在 Ubuntu 20.04 LTS(Focal Fossa) 上离线安装 Docker 的详细步骤:):

安装工具并创建目录

sudo apt update
sudo apt install -y apt-rdepends wget
mkdir -p /opt/docker-offline
cd /opt/docker-offline

下载 Docker CE 的核心包(适配 Ubuntu 20.04)

wget https://download.docker.com/linux/ubuntu/dists/focal/pool/stable/amd64/docker-ce_24.0.7-1~ubuntu.20.04~focal_amd64.deb
wget https://download.docker.com/linux/ubuntu/dists/focal/pool/stable/amd64/docker-ce-cli_24.0.7-1~ubuntu.20.04~focal_amd64.deb
wget https://download.docker.com/linux/ubuntu/dists/focal/pool/stable/amd64/containerd.io_1.6.9-1_amd64.deb
wget https://download.docker.com/linux/ubuntu/dists/focal/pool/stable/amd64/docker-buildx-plugin_0.10.4-1~ubuntu.20.04~focal_amd64.deb
wget https://download.docker.com/linux/ubuntu/dists/focal/pool/stable/amd64/docker-compose-plugin_2.18.1-1~ubuntu.20.04~focal_amd64.deb

下载时遇到“无法建立 SSL 连接”:
1.检查系统时间和时区

# 查看当前系统时间
date

# 若时间错误,手动校准(需 root 权限):
sudo date -s "2023-10-05 15:00:00"

# 或同步网络时间(需联网,离线环境需跳过):
sudo apt install ntpdate
sudo ntpdate pool.ntp.org

2.更新 CA 证书,证书链过期或缺失会导致 SSL 验证失败

# 更新 CA 证书包
sudo apt-get install --reinstall ca-certificates

# 更新本地证书库
sudo update-ca-certificates

下载所有依赖包

# 生成依赖列表(排除虚拟包)
apt-rdepends docker-ce | grep -v "^ " | grep -v "debconf-2.0" | sed 's/debconf-2.0/debconf/g' > deps.txt

# 下载所有依赖项到当前目录
cat deps.txt | xargs sudo apt-get download

打包所有文件

tar -czvf docker-offline.tar.gz *.deb

最终文件如下:
在这里插入图片描述
如果文件名包含特殊字符%3a:

# 重命名问题文件(确保文件名符合实际)
sudo mv 'libcrypt1_1%3a4.4.10-10ubuntu4_amd64.deb' 'libcrypt1_1:4.4.10-10ubuntu4_amd64.deb'

Docker 24.0.x:通常依赖 containerd.io >= 1.6.9,推荐 containerd.io 1.6.9 或更高版本(如 1.7.x)。
Docker 23.0.x:通常依赖 containerd.io 1.6.x

在离线机器上安装 Docker

传输离线包

scp /opt/docker-offline/docker-offline.tar.gz zhwubuntu2@10.0.1.130:/opt/docker-offline

进入离线机器docker-offline目录

#解压离线包
tar -xzvf docker-offline.tar.gz
#安装所有 .deb 包
root@zhwubuntu2-virtual-machine:/opt/docker-offline# sudo dpkg -i *.deb
#启动服务并设置开机自启
sudo systemctl enable docker
sudo systemctl start docker

在这里插入图片描述

相关文章:

  • 第二十三:内存逃逸、互斥锁 Map 线程安全
  • Spring Boot 项目基于责任链模式实现复杂接口的解耦和动态编排!
  • Python生成器:解锁高效编程的新姿势
  • 搭建一个Spring Boot聚合项目
  • 苍穹外卖day03
  • Redis之缓存更新策略
  • 10-常见笔试题-mk
  • 破解 MCP 认证难题方法深入了解考试内容
  • [MySQL] 索引
  • 使用Apache POI实现Java操作Office文件:从Excel、Word到PPT模板写入
  • 码界奇缘 Java 觉醒 后记 第二十二章 Epsilon无为秘境 - 寂静之地的内存试炼
  • 25软考中级*高项网课+历年真题+笔记+电子书+刷题【计算机软考】
  • C++——继承、权限对继承的影响
  • ubuntu学习day1
  • RuoYi-Vue升级为https访问-后端安装SSL证书(单台Linux服务器部署)
  • 图论基础理论
  • 低资源需求的大模型训练项目---调研0.5B大语言模型
  • 2025.04.13【Density 2d】| 基因表达数据可视化
  • Linux编程c/c++程序
  • 前端vue 项目px转为rem的自适应解决方案
  • 雀巢中国回应“巴黎水”丑闻报告:在中国销售的产品均符合相关法律法规要求
  • 王楚钦球拍受损,乒乓球裁判揭秘大赛球拍检测
  • 经济日报评论员:拧紧“带头过紧日子”的制度螺栓
  • 交通运输局男子与两名女子办婚礼?官方通报:未登记结婚,开除该男子
  • 有关“普泽会”,俄官方表示:有可能
  • 菲律宾中期选举结果揭晓,马科斯与杜特尔特家族重回“权力的游戏”