RAGFlow 基于深度文档理解构建的开源 RAG引擎 - 在 Ubuntu 上安装 Docker Engine
flyfish
文本依据的是
https://docs.docker.com/engine/install/ubuntu/
防火墙限制
警告
在安装 Docker 之前,请务必考虑以下安全影响和防火墙不兼容性:
如果你使用 ufw 或 firewalld 来管理防火墙设置,需注意当你通过 Docker 暴露容器端口时,这些端口会绕过你的防火墙规则。更多信息,请参见 Docker 和 ufw。
Docker 仅与 iptables-nft 和 iptables-legacy 兼容。由 nft 创建的防火墙规则在安装了 Docker 的系统上不受支持。请确保你使用的任何防火墙规则集都是用 iptables 或 ip6tables 创建的,并将它们添加到 DOCKER-USER 链中,详见数据包过滤和防火墙。
操作系统要求
为了安装 Docker Engine,你需要64位版本的以下 Ubuntu 版本之一:
Ubuntu Oracular 24.10
Ubuntu Noble 24.04 (LTS)
Ubuntu Jammy 22.04 (LTS)
Ubuntu Focal 20.04 (LTS)
Docker Engine for Ubuntu 适用于 x86_64(或 amd64)、armhf、arm64、s390x 和 ppc64le(ppc64el)架构。
卸载旧版本
在安装 Docker Engine 之前,你需要卸载任何冲突的软件包。
你的 Linux 发行版可能会提供非官方的 Docker 软件包,这可能会与 Docker 提供的官方软件包产生冲突。在安装官方版本的 Docker Engine 之前,必须卸载这些软件包。
需要卸载的非官方软件包包括:
docker.io
docker-compose
docker-compose-v2
docker-doc
podman-docker
此外,Docker Engine 依赖于 containerd 和 runc。Docker Engine 将这些依赖项打包为一个整体:containerd.io。如果你之前已经安装了 containerd 或 runc,请卸载它们以避免与 Docker Engine 捆绑的版本发生冲突。
运行以下命令来卸载所有冲突的软件包:
for pkg in docker.io docker-doc docker-compose docker-compose-v2 podman-docker containerd runc; do sudo apt-get remove $pkg; done
使用apt存储库安装
# Add Docker's official GPG key:
sudo apt-get update
sudo apt-get install ca-certificates curl
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc# Add the repository to Apt sources:
echo \"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu \$(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt-get update
安装Docker packages
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
设置国内镜像
sudo gedit /etc/docker/daemon.json
内容如下
{"registry-mirrors": ["https://docker.m.daocloud.io","https://registry.docker-cn.com","http://hub-mirror.c.163.com","https://docker.mirrors.ustc.edu.cn"]
}
查看结果
sudo docker info | grep Mirrors -A 4
解释命令
-
sudo docker info
:这个命令会输出有关 Docker 守护程序的详细信息,包括版本、操作系统、存储驱动、网络配置、插件、安全选项等。 -
|
:管道符,它将前一个命令的输出作为下一个命令的输入。 -
grep Mirrors
:grep
是一个文本搜索工具,这里用来查找包含 “Mirrors” 关键字的行。 -
-A 4
:这是grep
的一个选项,表示在匹配到的行之后再显示额外的 4 行内容。这有助于查看与匹配行相关的上下文信息。
然后重启 Docker 服务以使更改生效:
sudo systemctl restart docker
测试
sudo docker run hello-world