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

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

参考

本文参考以下文档:

相关推荐
鱼月半6 分钟前
两台电脑直连网络不通怎么办?
linux·网络协议
CAYA-34 分钟前
模电笔记1.1 半导体基础与 PN 结
经验分享·笔记·学习方法
光电笑映1 小时前
网络通信基础:从协议分层到 Socket 编程预备
linux·运维·服务器·网络
酸菜。1 小时前
dw_apb_gpio总结
linux
wunaiqiezixin1 小时前
MIT 6.S081 file system 实验篇(lab9):Large files (moderate)
linux·unix·os·xv6·mit6.s081
GeW2 小时前
RHCE 考试通过率提升:核心考点、实验环境与排错技巧
linux
微小冷2 小时前
用Mermaid画时序图
运维·流程图·时序图·mermaid·生命线
其实防守也摸鱼2 小时前
Codex 下载与本地部署实战:从安装到运行全指南
android·大数据·运维·安全·自动化
wdfk_prog2 小时前
ROS教程07:从 ros::start() 顺着源码读懂 Master、XML-RPC 与 Topic 注册发现
运维·缓存·docker·容器·ros
吴声子夜歌2 小时前
Shell编程实例——与解析相关的任务(二)
linux·运维·shell