一、Docker介绍

Docker是一种开源的应用容器引擎,让开发者能够打包应用及其依赖包到一个可移植的容器中,然后发布到任何流行的Linux或Windows机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口。这种技术可以保证包的快速、可靠、一致的交付,无论环境如何。

二、安装Docker

1. 更新Ubuntu镜像源

为了让后期在Ubuntu上安装软件速度更快,这里我们替换Ubuntu的软件镜像源为清华大学的软件源,执行过程如下:

$ cd /etc/apt
$ mv sources.list sources.list.bak
$ vim sources.list

# 在sources.list中输入以下内容

# 默认注释了源码镜像以提高 apt update 速度,如有需要可自行取消注释
deb <https://mirrors.tuna.tsinghua.edu.cn/ubuntu/> jammy main restricted universe multiverse
# deb-src <https://mirrors.tuna.tsinghua.edu.cn/ubuntu/> jammy main restricted universe multiverse
deb <https://mirrors.tuna.tsinghua.edu.cn/ubuntu/> jammy-updates main restricted universe multiverse
# deb-src <https://mirrors.tuna.tsinghua.edu.cn/ubuntu/> jammy-updates main restricted universe multiverse
deb <https://mirrors.tuna.tsinghua.edu.cn/ubuntu/> jammy-backports main restricted universe multiverse
# deb-src <https://mirrors.tuna.tsinghua.edu.cn/ubuntu/> jammy-backports main restricted universe multiverse

deb <http://security.ubuntu.com/ubuntu/> jammy-security main restricted universe multiverse
# deb-src <http://security.ubuntu.com/ubuntu/> jammy-security main restricted universe multiverse

# 预发布软件源,不建议启用
# deb <https://mirrors.tuna.tsinghua.edu.cn/ubuntu/> jammy-proposed main restricted universe multiverse
# # deb-src <https://mirrors.tuna.tsinghua.edu.cn/ubuntu/> jammy-proposed main restricted universe multiverse

保存后退出,然后执行以下命令更新:

$ sudo apt-get update

2. 安装相关依赖

$ sudo apt-get install ca-certificates curl
$ sudo install -m 0755 -d /etc/apt/keyrings
$ sudo curl -fsSL <https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/ubuntu/gpg> -o /etc/apt/keyrings/docker.asc
$ sudo chmod a+r /etc/apt/keyrings/docker.asc
$ echo \
  "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] <https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/ubuntu> \
  $(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \
  sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
$ sudo apt-get update

3. 安装Docker

# 安装最新版
$ sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

# 指定版本安装(课程中的版本)
$ VERSION_STRING=5:26.1.2-1~ubuntu.22.04~jammy
$ sudo apt-get install docker-ce=$VERSION_STRING docker-ce-cli=$VERSION_STRING containerd.io docker-buildx-plugin docker-compose-plugin

4. 验证Docker是否安装成功

$ sudo docker run hello-world

如果出现了以下输出,则代表Docker安装成功:

Hello from Docker!
This message shows that your installation appears to be working correctly.
...