Docker的三大核心概念:

  • 镜像(Image)
  • 容器(Container)
  • 仓库(Repository)

1. 核心概念

1. Docker镜像

Docker镜像类似于虚拟机镜像,可以将它理解为一个只读的模板。
一个镜像可以理解为一个基本的操作系统环境,里面安装了Apache引用程序,则可以成为Apache镜像。

2. Docker容器

Docker容器类似于一个轻量级的沙箱,Docker利用容器来运行和隔离应用。

容器是从镜像创建的应用运行实例。它可以启动、开始、停止、删除,而这些容器都是彼此相互隔离、互不可见的。

可以把容器看作一个简易版的Linux系统环境(包括root用户权限、进程空间、用户空间和网络空间等)以及运行在其中的应用程序打包而成的盒子。

镜像自身是只读的。容器从镜像启动的时候,会在镜像的最上层创建一个可写层。

3. Docker仓库

Docker仓库类似于代码仓库,是Docker集中存放镜像文件的场所。

2. 安装Docker引擎

Windows下安装Docker

  1. 下载Docker,双击exe文件安装即可。

使用Ubuntu系统进行Docker的实践学习

Ubuntu环境下安装Docker

操作链接:https://docs.docker.com/engine/install/ubuntu/

安装仓库
  • 查看系统版本号

Docler目前支持的最低Ubuntu版本为14.04 LTS,第一步首先查看Ubuntu版本。

  1. // 以下命令都可以查看Ubuntu版本
  2. uname -a
  3. lsb_release -a
  4. cat /proc/version
  1. Distributor ID: Ubuntu
  2. Description: Ubuntu 18.04.4 LTS
  3. Release: 18.04
  4. Codename: bionic
  1. 添加镜像源

首先需要安装apt-transport-https等软件包支持https协议的源:

  1. sudo apt-get update
  2. sudo apt-get install \
  3. apt-transport-https \
  4. ca-certificates \
  5. curl \
  6. gnupg \
  7. lsb-release
  1. 添加Docker官方的gpg密钥

    1. curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
  2. 使用下面命令安装稳定版官方仓库。

    1. echo \
    2. "deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu \
    3. $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

    安装Docker引擎
  3. apt更新包索引,安装最新版本的Docker引擎、containerd

    1. sudo apt-get update
    2. sudo apt-get install docker-ce docker-ce-cli containerd.io
  4. 为了安装特定版本的Docker引擎,列出可用的版本,选择安装:

    1. apt-cache madison docker-ce
    1. docker-ce | 5:20.10.6~3-0~ubuntu-bionic | https://download.docker.com/linux/ubuntu bionic/stable amd64 Packages
    2. docker-ce | 5:20.10.5~3-0~ubuntu-bionic | https://download.docker.com/linux/ubuntu bionic/stable amd64 Packages
    3. docker-ce | 5:20.10.4~3-0~ubuntu-bionic | https://download.docker.com/linux/ubuntu bionic/stable amd64 Packages
    4. docker-ce | 5:20.10.3~3-0~ubuntu-bionic | https://download.docker.com/linux/ubuntu bionic/stable amd64 Packages
    5. docker-ce | 5:20.10.2~3-0~ubuntu-bionic | https://download.docker.com/linux/ubuntu bionic/stable amd64 Packages
    6. docker-ce | 5:20.10.1~3-0~ubuntu-bionic | https://download.docker.com/linux/ubuntu bionic/stable amd64 Packages

    从第二列选择特定的版本进行安装:
    for example:: 5:20.10.3~3-0~ubuntu-bionic

    1. sudo apt-get install docker-ce=<VERSION_STRING> docker-ce-cli=<VERSION_STRING> containerd.io
    1. sudo apt-get install docker-ce=5:20.10.6~3-0~ubuntu-bionic docker-ce-cli=5:20.10.6~3-0~ubuntu-bionic containerd.io
  5. 检查Docker引擎是否被正确安装,通过运行hello-world image:

    1. sudo docker run hello-world

    This command downloads a test image and runs it in a container. When the container runs, it prints an informational message and exits.

  1. ubuntu@VM-0-5-ubuntu:~$ sudo docker version
  2. Client: Docker Engine - Community
  3. Version: 20.10.6
  4. API version: 1.41
  5. Go version: go1.13.15
  6. Git commit: 370c289
  7. Built: Fri Apr 9 22:46:01 2021
  8. OS/Arch: linux/amd64
  9. Context: default
  10. Experimental: true
  11. Server: Docker Engine - Community
  12. Engine:
  13. Version: 20.10.6
  14. API version: 1.41 (minimum version 1.12)
  15. Go version: go1.13.15
  16. Git commit: 8728dd2
  17. Built: Fri Apr 9 22:44:13 2021
  18. OS/Arch: linux/amd64
  19. Experimental: false
  20. containerd:
  21. Version: 1.4.4
  22. GitCommit: 05f951a3781f4f2c1911b05e61c160e9c30eaa8e
  23. runc:
  24. Version: 1.0.0-rc93
  25. GitCommit: 12644e614e25b05da6fd08a38ffa0cfe1903fdec
  26. docker-init:
  27. Version: 0.19.0
  28. GitCommit: de40ad0

配置Docker服务

为了避免每次使用Docker命令时都需要切换到特权身份,可以将当前用户加入安装中自动创建的docker用户组,代码如下:

  1. sudo usermod -aG docker USER_NAME

usermod可用来修改用户账户的各项设定。
用户更新组信息,退出并重新登录后即可生效。

Docker服务启动时实际上是调用了dockerd命令。用户可以直接通过执行dockerd命令来启动Docker服务。