Docker的初步认知

Docker的初步认知

注:文章内容仅作为学习交流。

一、Docker是什么?

Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的镜像中,然后发布到任何流行的 Linux或Windows 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口。

二、Docker的架构与构建

1.Docker的架构

Docker 使用客户端-服务器 (C/S) 架构模式,使用远程API来管理和创建Docker容器。Docker 容器通过 Docker 镜像来创建。容器与镜像的关系类似于面向对象编程中的对象与类。

Docker面向对象
容器对象
镜像

Docker采用 C/S架构 Docker daemon 作为服务端接受来自客户的请求,并处理这些请求(创建、运行、分发容器)。 客户端和服务端既可以运行在一个机器上,也可通过 socket 或者RESTful API 来进行通信。
Docker daemon 一般在宿主主机后台运行,等待接收来自客户端的消息。 Docker 客户端则为用户提供一系列可执行命令,用户用这些命令实现跟 Docker daemon 交互。

Docker由什么组成呢, 包括三个基本概念:

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

2.对Docker的构建

仓库(Repository)
Registry是Docker用于存放镜像文件的仓库,可以理解为类似于虚拟的物流仓储的仓库,里面存放的货物就是镜像文件。

基础操作:
Centos7,linux 3.10 内核,docker官方说至少3.8以上,建议3.10以上
(1)root账户登录,查看内核版本如下:

   uname -a

root
(2)把yum包更新到最新

   yum update

(期间要选择确认,输入 y 即可)

(3)安装需要的软件包, yum-util 提供yum-config-manager功能,另外两个是devicemapper驱动依赖的

   yum install -y yum-utils device-mapper-persistent-data lvm2

(4)设置yum源(选择其中一个)
中央仓库:

yum-config-manager --add-repo http://download.docker.com/linux/centos/docker-ce.repo

或阿里仓库:

yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

yum
(5)查看特定的版本

yum list docker-ce --showduplicates | sort -r

yum
(6)安装Docker,命令:yum install docker-ce-版本号。

yum install docker-ce-18.06.3.ce-3.el7

(期间要选择确认,输入 y 即可)

(7)启动Docker,命令:systemctl start docker,然后加入开机启动.

systemctl start docker
systemctl enable docker
docker version  #查看docker信息

docker
镜像(Image)
镜像就是构建容器的源代码,是一个只读的模板,由一层一层的文件系统组成的,类似于虚拟机的镜像。可以理解为类似于虚拟的物流网络,规定了每个集装箱的一些基本框架。

基础操作:
(1)列出镜像列表

 docker images

docker
(2)获取一个新的镜像,以ubuntu为例。

docker pull ubuntu:13.10

注意:如果你不指定一个镜像的版本标签,例如你只使用 ubuntu,docker 将默认使用 ubuntu:latest 镜像。

下载完成后,我们可以直接使用这个镜像来运行容器。

容器(Container)
容器就是由Docker镜像创建的运行实例,类似于虚拟机,容器之间是相互隔离的,包含特定的应用及其所需的依赖文件。可以理解为类似于虚拟的物流车辆,相对独立,按照自身规定的逻辑执行。
基本操作:
(1)使用 ubuntu 镜像启动一个容器

docker run -it ubuntu /bin/bash

参数说明:

-i: 交互式操作。
-t: 终端。
ubuntu: ubuntu 镜像。
/bin/bash:放在镜像名后的是命令,这里我们希望有个交互式 Shell,因此用的是 /bin/bash。
要退出终端,直接输入 exit

在这里插入图片描述
(2)启动或停止的容器

docker ps     #查看正在运行的容器
docker ps -a  #查看所有的容器
docker start [容器名称ID]#启动某个容器
docke stop [容器名称ID]#停止某个容器

三、Docker的理解

对于仓库、镜像、容器来讲关系十分密切,现在应用docker容器技术的场景也越来越多。经过上述构建docker的操作过程想必对这三者的关系已经有所体会,它们之间的结构层次和仓库集装箱的结构类似。
在这里插入图片描述

Docker容器技术的优势是部署速度快,开发、测试更敏捷;提高系统利用率,降低资源成本。

参考资料:

https://blog.csdn.net/u014069688/article/details/100532774
https://www.runoob.com/docker/docker-container-usage.html

  • 0
    点赞
  • 0
    评论
  • 0
    收藏
  • 一键三连
    一键三连
  • 扫一扫,分享海报

©️2021 CSDN 皮肤主题: 深蓝海洋 设计师:CSDN官方博客 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值