Docker系列(一)Docker概述和安装

0 前言

秋招结束已经有很长的时间,签了某公司软件开发岗位,主要还是使用java进行开发,那么作为一个之前并没有怎么写过java项目的小白,要学的东西很多,寒假快到了,趁这段时间,学一下Docker,博客记录一下学习的过程。

1 什么是Docker

Docker 是一个开源的应用容器引擎,基于 Go 语言 并遵从 Apache2.0 协议开源。让开发者可以打包他们的应用以及依赖包到一个可移植的镜像中,然后发布到任何流行的 Linux或Windows 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口,并且容器的性能开销极低。【来自百科】
Docker作为一个容器引擎,其作用和集装箱的类似,这也是他的思想来源,Docker仓库就像是一个货轮,把开发好的应用和所需环境封装到一个集装箱里面,在使用的时候,直接把一个集装箱里面的东西拿过来就可以使用了,避免了需要另外部署环境的麻烦;不同的应用存在于不同的集装箱内部,这样他们彼此之间就不会有相互的影响。【个人理解】
使用Docker可以实现更加简单的交付部署,直接安装整个包就可以了;可以实现更简单的更新升级,直接把整个包进行升级重新部署就好了;可以实现对计算机资源的更高效的利用,因为他的轻量级,实现了内核级的虚拟化;更简单的系统运维,使用Docker的情况下,开发和测试运维环境保持高度一致。

2 Docker结构

Docker结构如下所示,后面对其中涉及到的一些名词进行一个说明。
在这里插入图片描述

2.1 守护进程(Docker daemon)

守护进行是存在于主机中,对Docker api命令进行监听,并控制镜像,容器,网络等,他也可以和其他的守护进行进行通信。

2.2 镜像(image)

镜像就好比是一个java类或者说是一个模板,通过对镜像进行run操作,可以创建出多个容器,启动多个服务。

2.3 容器(container)

容器是可以独立运行的一个或者一个组应用。就像是一个集装箱中的一个整体。通过镜像创建。

2.4 仓库(repository)

仓库中保存着许多的镜像,可以通过pull,push等操作完成存放读取。

3 Docker的安装

说明:自己买了一个阿里云的服务器,配置了centos,以下是在阿里云上的安装部署说明。这里的安装参照官网上的说明进行,文档地址:https://docs.docker.com/engine/install/centos/,其他版本自行查找文档。

3.0 环境查看

#查看系统内核版本
[root@********** ~]# uname -r
4.18.0-193.6.3.el8_2.x86_64
#查看系统版本
[root@********** ~]# cat /etc/os-release 
NAME="CentOS Linux"
VERSION="8 (Core)"
ID="centos"
ID_LIKE="rhel fedora"
VERSION_ID="8"
PLATFORM_ID="platform:el8"
PRETTY_NAME="CentOS Linux 8 (Core)"
ANSI_COLOR="0;31"
CPE_NAME="cpe:/o:centos:centos:8"
HOME_URL="https://www.centos.org/"
BUG_REPORT_URL="https://bugs.centos.org/"

CENTOS_MANTISBT_PROJECT="CentOS-8"
CENTOS_MANTISBT_PROJECT_VERSION="8"
REDHAT_SUPPORT_PRODUCT="centos"
REDHAT_SUPPORT_PRODUCT_VERSION="8"

需要注意的是
To install Docker Engine, you need a maintained version of CentOS 7 or 8. Archived versions aren’t supported or tested.

The centos-extras repository must be enabled. This repository is enabled by default, but if you have disabled it, you need to re-enable it.

The overlay2 storage driver is recommended.

3.1 卸载旧版本

$ sudo yum remove docker \
                  docker-client \
                  docker-client-latest \
                  docker-common \
                  docker-latest \
                  docker-latest-logrotate \
                  docker-logrotate \
                  docker-engine
 #运行之后报告为none of these packages are installed.说明可以了。

3.2 安装

安装的方式主要有三种,推荐使用仓库进行安装,这里只对这一种进行说明。

3.2.1 仓库安装

#需要的安装包
$ sudo yum install -y yum-utils
#设置镜像的仓库
$ sudo yum-config-manager \
    --add-repo \
    https://download.docker.com/linux/centos/docker-ce.repo #默认是国外的源 速度会比较慢
    http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo # 可以改用这个 国内阿里云镜像

有一些配置可以参考官网文档选择是否需要进行配置

3.2.2 安装Docker

#安装最新版的Docker引擎和容器
sudo yum install docker-ce docker-ce-cli containerd.io

3.2.3 启动和测试

到这里其实就已经安装好了,接下来来验证一下是否安装完成。

#启动Docker
sudo systemctl start docker

启动之后查看版本信息
docker version
在这里插入图片描述

#Docker hello world
sudo docker run hello-world

在这里插入图片描述

已标记关键词 清除标记
©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页