Ubuntu22.04.5 LTS安装与使用Docker

Ubuntu22.04.5 LTS安装Docker

    • [0. 安装系统与环境](#0. 安装系统与环境)
    • [1. 通过apt安装Docker(root用户)](#1. 通过apt安装Docker(root用户))
      • [1.1. 配置 Docker 的 apt 仓库](#1.1. 配置 Docker 的 apt 仓库)
      • [1.2. apt安装最新的Docker](#1.2. apt安装最新的Docker)
      • [1.3. 安装特定版本的Docker](#1.3. 安装特定版本的Docker)
    • [2. 分组(root用户)](#2. 分组(root用户))
    • [3. 管理Docker状态(root用户)](#3. 管理Docker状态(root用户))
    • [4. 普通用户使用Docker](#4. 普通用户使用Docker)

0. 安装系统与环境

  • 系统:Ubuntu 22.04.5 LTS
  • Docker版本:28.3.2
  • 安装用户:root用户安装(sudo安装)
  • 安装日期:2025/07/23
  • 参考官方教程:install-using-the-repository

1. 通过apt安装Docker(root用户)

在首次于新主机上安装 Docker Engine 之前,必须先配置 Docker 的 apt 仓库。配置完成后,便可通过该仓库来安装和更新 Docker。

1.1. 配置 Docker 的 apt 仓库

bash 复制代码
# 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 "${UBUNTU_CODENAME:-$VERSION_CODENAME}") stable" | \
  sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt-get update

PS:看到一些教程也有配置阿里云的源,但我参照官方安装教程安装并没有失败或者很慢。

1.2. apt安装最新的Docker

bash 复制代码
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

1.3. 安装特定版本的Docker

bash 复制代码
# 列出可选择的版本列表
apt-cache madison docker-ce | awk '{ print $3 }'

5:28.3.2-1~ubuntu.24.04~noble
5:28.3.1-1~ubuntu.24.04~noble
...

选择并安装其中一个版本的Docker

bash 复制代码
VERSION_STRING=5:28.3.2-1~ubuntu.24.04~noble
sudo apt-get install docker-ce=$VERSION_STRING docker-ce-cli=$VERSION_STRING containerd.io docker-buildx-plugin docker-compose-plugin

2. 分组(root用户)

启动 Docker 服务后会自动创建 docker 组,但组内没有任何用户,必须只能使用 sudo 来运行 Docker 命令。因此需要将使用Docker的用户分别加入docker 组。执行以下命令后,注销并重新登录。

bash 复制代码
#1. 把当前用户加入 docker 组(只需一次)
sudo usermod -aG docker $USER

#2. 立即让新组生效(或注销重登)
newgrp docker

#3. 验证组是否生效
getent group docker

3. 管理Docker状态(root用户)

bash 复制代码
1. Docker守护进程状态
sudo systemctl status docker

2. 启动并开机自启Docker
sudo systemctl start docker
sudo systemctl enable docker

3. 关闭Docker
sudo systemctl stop docker

4. 普通用户使用Docker

使用 docker ps 命令来确认容器是否已启动并正在运行。

bash 复制代码
docker ps

使用 docker stop 命令来停止指定ID的容器。

bash 复制代码
docker stop <the-container-id>

拉起一整套服务:

bash 复制代码
git clone https://github.com/ConardLi/easy-dataset.git
cd easy-dataset
docker-compose up -d 

docker-compose up:根据当前目录下的 docker-compose.yml 文件,创建并启动所有定义的服务(容器、网络、卷等)。
-d / --detach:在后台(守护进程模式)运行,终端不会被占用,可以继续做其他操作。

相关推荐
Madison-No71 小时前
搭建项目测试环境
linux·运维·服务器·python
吴声子夜歌2 小时前
Shell编程实例——编写安全的shell脚本(二)
linux·运维·shell
悠悠121382 小时前
微服务通信别只看性能:REST 与 gRPC 的 6 个选型判断和一次 502 故障复盘
运维·服务器
zx_741484814 小时前
【Linux入门】Shell 函数、正则表达式与文本处理:cut 与 awk
linux·运维·正则表达式
Zenova EdgeOS4 小时前
Linux dmesg 工业边缘实战:内核日志过滤、持久化与故障定位
linux·运维·边缘计算·工业边缘·dmesg·内核日志
九皇叔叔4 小时前
K8S 资源菜单
docker·容器·kubernetes·k8s
wdfk_prog5 小时前
ROS教程08:从 TransportTCP::connect() 追到 TCPROS Connection Header、序列化与 Socket 数据传输
运维·缓存·docker·容器·ros
Zhu7585 小时前
docker环境快速部署postgresql数据库18及以上版本
postgresql·容器
做运维的阿瑞6 小时前
Python 标准库汇总:分类速览与常用模块清单
linux·运维·python
zoutao986 小时前
Gitea Actions 自定义 Runner 镜像与自动化部署实战
ci/cd·docker·gitea