当前位置:  首页>> 技术小册>> Docker零基础到实战应用

Docker的三大核心概念

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

镜像

Docker镜像类似于虚拟机镜像,可以将它理解为一个只读的模板。
镜像是创建Docker容器的基础,有了镜像,就可以用这个镜像创建容器。

容器

Docker容器类似于一个轻量级的沙箱,Docker利用容器来运行和隔离应用。
容器是从镜像创建的应用运行实例。它可以启动、开始、停止、删除,而这些容器都是彼此相互隔离、互不可见的。
可以把容器看作一个简易版的Linux系统环境(包括root用户权限、进程空间、用户空间和网络空间等)以及运行在其中的应用程序打包而成的盒子。

仓库

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

Ubuntu系统安装build-essential

Ubuntu缺省情况下,并没有提供C/C++的编译环境,因此还需要手动安装。但是如果单独安装gcc以及g++比较麻烦,Ubuntu提供了一个build-essential软件包。查看该软件包的依赖关系:

  1. y@ubuntu:~$ apt-cache depends build-essential
  2. build-essential
  3. |Depends: libc6-dev
  4. Depends: <libc-dev>
  5. libc6-dev
  6. Depends: gcc
  7. Depends: g++
  8. Depends: make
  9. make-guile
  10. Depends: dpkg-dev

安装了该软件包,编译c/c++所需要的软件包也都会被安装。因此如果想在Ubuntu中编译c/c++程序,只需要安装该软件包就可以了。

安装方法如下:

  1. $sudo apt install build-essential

一键安装Docker

Aliyun安装脚本

  1. $ curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun

Dcloud安装

  1. $ curl -sSL https://get.daocloud.io/docker | sh

Ubuntu搭建Docker

Docker目前支持的最低Ubuntu版本为14.04 LTS,但实际上从稳定性上考虑,推荐使用16.04 LTS或18.0.4 LTS版本,或者20.04LTS版本,并且系统内核越新越好,以支持Docker最新的特性。

官方文档:
https://docs.docker.com/engine/install/ubuntu/

更换源(可选,如果更换为清华源,则后面的安装步骤参数需要指定为清华源)

手动安装docker

移除系统中可能存在的旧版本的Docker

  1. $ sudo apt-get remove docker docker-engine docker.io containerd runc

安装可以通过https使用仓库的一些相关包

  1. $ sudo apt-get install \
  2. apt-transport-https \
  3. ca-certificates \
  4. curl \
  5. gnupg-agent \
  6. software-properties-common

添加GPG key
清华源:

  1. $ curl -fsSL https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/ubuntu/gpg | sudo apt-key add -

ubuntu源:

  1. $ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg

验证指纹

  1. sudo apt-key fingerprint 0EBFCD88

应该得到如下内容:

pub rsa4096 2017-02-22 [SCEA]
9DC8 5822 9FC7 DD38 854A E2D8 8D81 803C 0EBF CD88
uid [ unknown] Docker Release (CE deb)docker@docker.com
sub rsa4096 2017-02-22 [S]

添加docker-ce的仓库

清华源:

  1. $ sudo add-apt-repository \
  2. "deb [arch=amd64] https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/ubuntu \
  3. $(lsb_release -cs) stable"

ubuntu源:

  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

安装前需要再次更新源:

  1. $ sudo apt update
  1. $ sudo apt-get install docker-ce docker-ce-cli containerd.io

更换docker镜像源:(可选)

  1. $ sudo vim /etc/docker/daemon.json
  1. {
  2. "registry-mirrors": ["http://hub-mirror.c.163.com"]
  3. }

启动docker

  1. sudo systemctl start docker

Centos搭建Docker

Docker目前支持CentOS 7及以后的版本。

CentOS更换源方法:

更换为网易源:

  1. $ mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.bakup
  2. $ wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.163.com/.help/CentOS7-Base-163.repo
  3. $ yum clean all
  4. $ yum makecache

手动安装docker

  1. $ sudo yum update
  2. $ sudo yum install -y yum-utils \
  3. device-mapper-persistent-data \
  4. lvm2
  1. $ sudo yum-config-manager \
  2. --add-repo \
  3. https://download.docker.com/linux/centos/docker-ce.repo
  1. $ sudo yum update
  2. $ sudo yum install -y docker-ce

启动Docker服务:

  1. $ sudo systemctl docker start

配置Docker用户

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

  1. $ sudo usermod -aG docker $USER

更新docker组

  1. $ newgrp docker

该分类下的相关小册推荐: