Docker基础【Ubuntu安装/Windows安装】 - 指南


0. 前言


生产环境下,我们主要使用的是Docker的Server版本,而不是桌面版本,所以之后的学习中,我们都以Server版本为主。


1. Ubuntu下安装Docker


1.1 安装依赖


  • 操作系统版本(最好都大于等于下面版本)
Ubuntu kinetic 22.10
Ubuntu Jammy 22.04 (LTS)
Ubuntu Focal 20.04 (LTS)
Ubuntu Bionic 18.04 (LTS)
  • CPU支持
    • ARM 和 X86_64。

1.2 安装Docker


1. 确定CPU,可以看到我们的是X86_64,是支持的,如果是arm一般会显示aarch64

(base) ubuntu@Ubuntu22:~$ uname -a
Linux Ubuntu22 6.8.0-85-generic #85~22.04.1-Ubuntu SMP PREEMPT_DYNAMIC Fri Sep 19 16:18:59 UTC 2 x86_64 x86_64 x86_64 GNU/Linux

2. 确定操作系统版本,本次我们使用Ubuntu22.04

(base) ubuntu@Ubuntu22:~$ cat /etc/*release*
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=22.04
DISTRIB_CODENAME=jammy
DISTRIB_DESCRIPTION="Ubuntu 22.04.5 LTS"
PRETTY_NAME="Ubuntu 22.04.5 LTS"
NAME="Ubuntu"
VERSION_ID="22.04"
VERSION="22.04.5 LTS (Jammy Jellyfish)"
VERSION_CODENAME=jammy
ID=ubuntu
ID_LIKE=debian
HOME_URL="https://www.ubuntu.com/"
SUPPORT_URL="https://help.ubuntu.com/"
BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/"
PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy"
UBUNTU_CODENAME=jammy

3. 卸载旧版本,如果是新的服务器,比如输入docker并没有这个命令,就不需要卸载

  • sudo apt-get remove docker docker-engine docker.io containerd runc

4. 卸载历史版本

  • sudo apt-get purge docker-ce docker-ce-cli containerd.io dockerbuildx-plugin docker-compose-plugin docker-ce-rootless-extras -y

5. 配置docker下载源

  • curl 命令安装:sudo apt install curl -y
    • 这个命令相当于一个浏览器,可以访问页面拿到页面源代码。
  • 创建 gpg key 目录:sudo mkdir -m 0755 -p /etc/apt/keyrings
  • 下载 gpg key:curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor --yes -o /etc/apt/keyrings/docker.gpg
    • 作用是校验gpg key,防止下到一些黑客软件。
  • 创建docker源,docker.list
echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

在这里插入图片描述

6. 刷新源,并安装docker

  • 刷新:sudo apt update
  • 安装:sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin -y

在这里插入图片描述

7. 自动启动配置

# 配置加载
sudo systemctl daemon-reload
# 启动服务
sudo systemctl start docker
# 开机启动
sudo systemctl enable docker
# 查看服务状态
sudo systemctl status docker
  • 配置成功显示如下

在这里插入图片描述

8. 检查安装结果,查看版本

在这里插入图片描述

9. 执行hello-world,可以看到 Hello from Docker!,表明docker服务正常

在这里插入图片描述


1.3 Docker镜像源修改


对于使用 systemd 的系统(Ubuntu 16.04+、Debian 8+、CentOS 7),在配置文件 /etc/docker/daemon.json 中加入:

  • 这个文件就是一个配置文件,存放着镜像源的地址和其他配置信息。
{
"registry-mirrors": [
"https://docker.1ms.run",
"https://docker.mybacc.com",
"https://dytt.online",
"https://lispy.org",
"https://docker.xiaogenban1993.com",
"https://docker.yomansunter.com",
"https://aicarbon.xyz",
"https://666860.xyz",
"https://docker.zhai.cm",
"https://a.ussh.net",
"https://hub.littlediary.cn",
"https://hub.rat.dev",
"https://docker.m.daocloud.io"
]
}

重新启动docker:

# 重新加载配置文件
sudo systemctl daemon-reload
# 重新启动docker
sudo systemctl restart docker

1.4 Docker目录修改


Docker默认的安装目录为 /var/lib/docker,这里面会存放很多很多镜像,所以我们在安装的时候需要考虑这个目录的空间,有两种解决方案。

  • /var/lib/docker 挂载到一个大的磁盘,这种一般我们能控制挂载目录,像腾讯云这种云厂商在安装K8s节点的时候提供了挂载选项,可以直接挂载这个目录过去。
  • 安装之前挂载一个大的磁盘,然后创建一个软链接到 /var/lib/docker,这样就自动安装到我们空间比较大的磁盘了。
# 假定我们磁盘的大的目录为 /data
mkdir -p /data/var/lib/docker
# 编辑配置文件
vi /etc/docker/daemon.json
# 添加如下内容
{
"data-root": "/data/var/lib/docker"
}
# 加载配置
sudo systemctl daemon-reload
# 重新启动
sudo systemctl restart docker
  • 以上都运行成功后,目标文件夹会出现如下内容:

在这里插入图片描述


2. GUI版本安装(Windows11)


2.1 安装依赖


1. 开启虚拟化功能

  • 一般是自动开启的,在任务管理器性能栏可以查看:

在这里插入图片描述

2. win + i,启用或关闭Windows功能

  • 开启图中选项,安装这两个组件:

在这里插入图片描述

3. 安装WSL2

  • 打开powershell,右键以管理员身份运行:

在这里插入图片描述

  • 执行命令,安装适用于Linux的Windows子系统:
    • 这是手动下载,会很快。
# 下载安装包
Invoke-WebRequest -Uri "https://wslstorestorage.blob.core.windows.net/wslblob/wsl_update_x64.msi" -OutFile "$env:TEMP\wsl_update.msi"
# 安装 - 这会显示进度条,更容易监控
msiexec /i "$env:TEMP\wsl_update.msi"

2.2 安装Docker


1. 官网下载

在这里插入图片描述

2. 以管理员身份运行安装包

在这里插入图片描述

  • 安装成功:

在这里插入图片描述

3. 查看docker版本

在这里插入图片描述

4. 查看docker信息

在这里插入图片描述

5. 测试hello world

在这里插入图片描述


posted @ 2026-01-27 22:26  clnchanpin  阅读(2)  评论(0)    收藏  举报