Ubuntu离线安装Docker容器

前言

  • 使用安装的工具snap安装在沙箱中,并且该沙箱之外的权限有限。docker无法从其隔离的沙箱环境访问外部文件系统。

目录

准备环境

卸载已安装的Docker环境

快照安装的Docker

如果是通过快照安装的Docker,可以使用以下命令删除您的旧版本Docker

bash 复制代码
# Remove docker from snap
snap remove docker
# OR Run snap remove --purge docker
# Remove the docker directory, and old version (It's okay if these don't exist already)
rm -R /var/lib/docker
sudo apt-get remove docker docker-engine docker.io

注意:snap remove docker命令会保存以前的快照,这可能需要很长时间。

使用snap remove --purge docker跳过保存以前的快照。

apt删除Docker

在安装 Docker Engine 之前,您需要卸载所有冲突的软件包

要卸载的非官方软件包有:

  • docker.io
  • docker-compose
  • docker-compose-v2
  • docker-doc
  • podman-docker
  • 此外,Docker Engine 依赖于containerd和runc。 Docker 引擎将这些依赖项捆绑为一个捆绑包:containerd.io.如果您之前安装过containerd或runc,请卸载它们以避免与 Docker Engine 捆绑的版本冲突。
bash 复制代码
for pkg in docker.io docker-doc docker-compose docker-compose-v2 podman-docker containerd runc; do sudo apt-get remove $pkg; done

apt-get可能会报告您没有安装这些软件包

/var/lib/docker/卸载 Docker 时,不会自动删除存储的映像、容器、卷和网络。如果您想从全新安装开始,并且希望清理任何现有数据,请阅读官方文档 卸载 Docker 引擎部分。

安装docker-compose

下载执行文件

从发布地址下载你所需要docker-compose版本的二进制文件

如本文所需要的docker-compose-linux-x86_64,下载完成后,将文件名称修改为docker-compose,

然后将二进制文件上传到Ubuntu服务器

如上传到/opt目录

将文件移到 /usr/local/bin

执行以下命令将文件移动到/usr/local/bin:

bash 复制代码
# 替换 /opt/docker-compose 为你实际的文件路径。
sudo mv /opt/docker-compose /usr/local/bin/docker-compose

赋予执行权限

运行以下命令来赋予 docker-compose 执行权限:

bash 复制代码
sudo chmod +x /usr/local/bin/docker-compose

验证安装

输入以下命令来验证 docker-compose 是否安装成功:

bash 复制代码
docker-compose --version

如果安装成功,你应该会看到 docker-compose 的版本信息。

安装Docker

下载deb软件包

访问Docker-deb发布地址

在列表中选择您的 Ubuntu 版本

转至pool/stable/并选择适用的架构(amd64、 armhf、arm64或s390x)。

下载Docker 引擎、CLI、containerd 和 Docker Compose 软件包的以下文件:

  • containerd.io_<version>_<arch>.deb
  • docker-ce_<version>_<arch>.deb
  • docker-ce-cli_<version>_<arch>.deb
  • docker-buildx-plugin_<version>_<arch>.deb
  • docker-compose-plugin_<version>_<arch>.deb

安装deb软件包。将以下示例中的路径更新为下载 Docker 软件包的位置。

如本文下载后移动至服务器/home下

开始安装

执行以下命令进行安装:

bash 复制代码
sudo dpkg -i *.deb

启动Docker

Docker 守护进程自动启动:

bash 复制代码
sudo service docker start

验证安装

执行以下命令验证安装状态

bash 复制代码
docker version

执行成功会打印相关版本信息

参考

本文参考以下文档:

相关推荐
mounter6254 小时前
从硬件互连到操作系统变革:CXL 技术演进与 Linux 内核工程挑战
linux·运维·服务器
zhengqweasd4 小时前
机房托管服务器怎么选硬盘,机械盘和 SSD 托管场景差异
运维·服务器·github
sbjdhjd5 小时前
云安全 | Docker 容器逃逸复盘(三):docker.sock 挂载与 Docker-in-Docker 风险
经验分享·网络安全·docker·云原生·容器·kubernetes·云安全
z775088546 小时前
冷链仓储的数据断链怎么解?感知、平台与对接的技术拆解
经验分享
xh didida6 小时前
Linux -- 基础IO
linux·服务器·开发语言·c++
个 人 练 习 生6 小时前
C++ string 类模拟实现:从底层理解字符串(上)
开发语言·c++·经验分享·学习·程序人生
心易行者6 小时前
Agent应用+API端点商业化进阶实战:从单体智能体到可付费调用的API全流程
运维·服务器·人工智能·python·apache
科技研学社6 小时前
精度决胜品质:羽绒服缝制工艺标准与自动化精度对标解析
运维·自动化
夜之眷属7 小时前
Core dump 崩溃排查:JVM 宕机后,那份 core 文件怎么用 gdb 还原现场
java·运维·服务器·jvm