- 高级撰稿人
- 作者
Docker 是领先的容器化平台,让开发者能够在一致的环境中构建、共享、部署和管理应用程序。它通过提供可在任何环境运行的隔离容器,简化了应用程序开发流程。凭借其优化开发与运维工作流的能力,Docker 已在开发者和企业中广受欢迎。
本分步教程将指导您在 Ubuntu 22.04 上安装 Docker,并介绍如何管理 Docker 容器与镜像。
Docker 容器是将应用程序与其所有依赖项、库及配置文件封装的隔离环境。这确保应用程序从开发到生产环境都能保持一致运行。
Docker 镜像是定义容器内容与配置的只读模板。运行容器时,Docker 会在镜像基础上创建可读写的临时层,使多个容器能共享同一镜像的同时保留各自的修改。
Docker 通过提升可移植性、一致性和效率,成为开发者的得力工具。主要优势包括:
借助Docker,开发者可确保应用程序在任何环境中稳定高效运行。
在 Ubuntu 22.04 上安装 Docker 需满足以下系统要求:
开始操作!
通过几个简单命令即可在 Ubuntu 22.04 上安装 Docker。请按以下步骤在系统中配置 Docker:
首先通过 SSH 登录服务器实例。连接后更新本地软件包索引,此步骤对全新安装的 Ubuntu 22.04 尤为重要。
$ sudo apt update
接着使用以下命令安装 Docker 所需依赖包:
$ sudo apt install apt-transport-https ca-certificates curl software-properties-common
安装完这些依赖项后,即可进入下一步。
为确保安装最新版本,建议使用官方Docker仓库而非Ubuntu默认仓库(其版本可能滞后)。请按以下步骤从官方仓库安装:
首先通过curl命令添加Docker仓库的GPG签名密钥:
$ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
接着在 sources.list.d 目录创建新条目,将 Docker APT 仓库加入系统:
$ echo “deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable” | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
为确保系统识别新增的Docker仓库,请再次更新本地软件包索引:
$ sudo apt update
现在选择社区版在Ubuntu 22.04上安装Docker(免费下载使用)。-y选项可实现非交互式安装:
$ sudo apt install docker-ce -y
安装完成后,Docker守护进程应已启动。验证方法:检查 Docker 服务状态:
$ sudo systemctl status docker
输出应显示 Docker 已成功启动并运行。
默认情况下,仅 root 用户或安装时创建的 Docker 组成员可执行 Docker 命令。若非 root 用户尝试执行 docker run 等命令,将遭遇权限错误。
为解决此问题,可将当前登录用户加入 Docker 组。此操作允许用户无需 sudo 即可运行 Docker 命令。本例中将用户 “samreena” 加入 Docker 组:
首先执行以下命令将用户加入 Docker 组:
$ sudo usermod -aG docker ${USER}
接着通过以下命令验证用户是否已加入 Docker 组:
$ groups ${USER}
此时应在用户所属组列表中看到 docker 组。为使变更生效,请关闭并重新打开终端会话,或执行:
su - ${USER}
此时您应能无需root权限即可执行Docker命令。
为验证Docker是否正确安装,需测试其功能。Docker默认配置从Docker Hub下载镜像——该平台由软件供应商和开源社区维护,是全球最大的容器镜像仓库。
为确保能访问并从 Docker Hub 拉取镜像,我们将运行名为 hello-world 的简单容器。执行以下命令即可:
$ docker run hello-world
执行此命令时,Docker 会先在本地查找 hello-world 镜像。若未找到,则会联系 Docker 守护进程从 Docker Hub 拉取镜像。Docker守护进程将基于镜像创建容器,并在终端显示输出结果。输出完成后容器将停止运行。
输出内容将以“Hello from Docker”开头,持续显示直至终端提示符重新出现。
Docker 命令通常遵循以下语法:
$ docker [选项] [命令]
查看所有可用 Docker 命令列表,只需运行:
$ docker
您还可以通过运行以下命令获取详细的系统级 Docker 信息,包括 Docker 版本、运行中的容器和镜像:
$ docker info
这将显示有关 Docker 安装及其当前状态的全面信息。
在上一步骤中,我们从 Docker 镜像运行了一个容器。现在让我们探讨容器与镜像的区别:
在 Docker Hub 搜索镜像时,请使用 docker search 命令后接镜像名称。例如搜索 httpd 镜像:
$ docker search httpd
Docker 将搜索注册表并列出匹配镜像。输出包含详细信息,其中“Official”列的“OK”标记表示镜像由官方维护者提供(如 httpd 镜像对应的 Apache HTTP Server)。
下载镜像请使用 docker pull 命令:
$ docker pull httpd
使用 docker images 命令可列出系统已下载的镜像:
$ docker images
输出将显示镜像信息,例如您已下载或使用的 httpd 和 hello-world 镜像。
接下来我们将深入探讨 Docker 容器的操作。
通过 docker run 命令加载本地下载的镜像即可创建容器。例如,创建基于 httpd 镜像的容器时,请使用以下命令:
$ docker run -d -p 8080:80 httpd
此处 -d 选项使容器在后台运行,-p 选项将容器的 80 端口映射至本地机器的 8080 端口。终端将显示容器 ID(唯一字母数字字符串)。
若需在容器内建立交互式shell会话,可同时使用-i和-t选项。例如直接从Docker Hub运行Ubuntu容器时:
$ docker run -it ubuntu bash
Docker将优先在本地搜索AlmaLinux镜像。若未找到,则从Docker Hub拉取镜像创建容器并开启交互式shell会话。此时命令提示符将发生变化,表明您已以root用户身份进入容器内部。
在容器中可执行任意命令。例如更新系统时运行:
# dnf update
按y键继续执行更新。
安装Redis数据库时运行:
# dnf install redis -y
输出结果将确认安装成功。
请注意:所有修改仅对当前容器生效。退出容器只需执行 exit 命令。
列出系统所有 Docker 镜像:
$ docker images
查看运行中容器:
$ docker ps
列出所有容器(含已停止容器):
$ docker ps -a
查看最近创建的容器:
$ docker ps -l
停止运行中的容器:
$ docker stop [容器ID或名称]
启动已停止的容器:
$ docker start [容器ID或名称]
重启容器:
$ docker restart [容器ID或名称]
删除容器前请确保其已停止,然后使用:
$ docker rm [容器ID或名称]
强制删除运行中的容器,请使用:
$ docker rm -f [容器ID或名称]
本指南详细介绍了在Ubuntu 22.04系统上安装Docker的步骤,并提供了容器与镜像的管理方法。遵循这些步骤,您可高效配置 Docker 并开始利用其强大的容器化能力。更多细节与高级用法请参阅官方 Docker 文档。
您的业务是否已超越 VPS 的承载能力?立即升级至专用服务器!
体验具备无限流量、强大可扩展性与高度定制化的环境。
通过我们的专用服务器解决方案,助您的业务迈向新高度。立即联系我们了解更多详情!
Start for free and unlock high-performance infrastructure with instant setup.
您的意见有助于我们提供更好的服务。