Docker学习记录--入门了解+安装

时间:2023-12-16 23:15:32

Docker简介

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

附通俗易懂的解释:

  这里需要举个栗子,转载自:http://www.cnblogs.com/I-will-be-different/p/4353597.html

  我们现有的模式是在一个服务器上安装统一一个jdk,运行多个tomcat,每个tomcat里面一个java应用,大家也知道tomcat不用安装,当我们项目要迁徙的时候也只需要把整个tomcat打包然后在另一台服务器上解压就ok了,也很简单。。。当时我就不懂Docker有什么好处,一度以为对我们现有的模式没用。知道昨天跟其他人交流我才弄明白一个问题,那就是应用隔离与资源独立!!

  Docker学习记录--入门了解+安装

  如图,我们的模式是A1,所有的应用共享服务器的CPU、内存等资源,这时如果一个应用出现问题,比如CPU爆满等等,另一个应用也就玩完了。所以要这时就要做到资源独立,一个应用一份资源,现在要做到这样只有做成A2那样,一个服务器上装几个虚拟机,一个虚拟机一个应用。这时如果你要重启虚拟机,你想想你重启电脑要多久。而且你想迁移应用的话,你就又要装虚拟机,配环境等等,麻烦不?我是觉得麻烦。如果有了Docker,就是A3 的模式,容器是什么概念我就不说了,这时一个服务器上运行多个容器,一个容器拥有独立的CPU、内存等资源,完全满足了应用隔离的需求。而且容器重启,1秒搞定!应用迁移的时候,这个大家应该也知道,所有装了Docker的服务器,只需把镜像pull或者load进去,run,一切OK,就是这么任性!

对比分析其优点

  • Docker容器很快,启动和停止可以在秒级实现,这相比传统的虚拟机方式要快得多。
  • Docker容器对系统资源需求很少,一台主机上可以同时运行数千个Docker容器。
  • Docker通过类似Git的操作来方便用户获取、分发和更新应用镜像,指令简明,学习成本较低。
  • Docker通过Dockerfile配置文件来支持灵活的自动化创建和部署机制,提高工作效率。

  Docker学习记录--入门了解+安装

  虚拟机实现了硬件上的虚拟,而Docker则实现了操作系统级别的虚拟。

  学习参考:百度百科  官网  大神的博客 Docker学习笔记  Docker入门教程  史上最全Docker资料集粹


 Docker组件

  • DockerClient客户端

  也就是docker命令以及它的子命令,通过它我们可以方便的创建管理容器。

Docker学习记录--入门了解+安装

  • Docker Daemon守护进程

也叫docker服务器,以Linux后台服务方式运行

Docker学习记录--入门了解+安装

docker daemon运行在docker host上,负责创建、运行、监控容器,构建、存储镜像。

  • Docker Image镜像

可将docker 镜像看做只读模板,通过它可以创建docker 容器。

docker image多种生成方式:1、从无到有创建;2、下载别人创建好的;3、以现有镜像为基础创建新镜像

我们可以将镜像的内容和创建步骤描述在一个文本文件中,这个文件被称作 Dockerfile,通过执行 docker build <docker-file> 命令可以构建出 Docker 镜像,后面我们会讨论。

  • DockerContainer容器

docker 容器就是docker镜像的运行实例。

用户可以通过 CLI(docker)或是 API 启动、停止、移动或删除容器。可以这么认为,对于应用软件,镜像是软件生命周期的构建和打包阶段,而容器则是启动和运行阶段。

  • Registry

Registry 是存放 Docker 镜像的仓库,Registry 分私有和公有两种。

Docker Hub(https://hub.docker.com/) 是默认的 Registry,由 Docker 公司维护,上面有数以万计的镜像,用户可以*下载和使用。

出于对速度或安全的考虑,用户也可以创建自己的私有 Registry。后面我们会学习如何搭建私有 Registry。

docker pull 命令可以从 Registry 下载镜像。
docker run 命令则是先下载镜像(如果本地没有),然后再启动容器。


Docker安装 

1.安装要求:

  ubuntu内核版本高于 3.10,sentos要求6.5以上版本

2.Sentos7安装Docker:

  采用yum方式安装,首先得配置yum源:CentOS docker yum 源配置方法

   1)卸载旧版本:

$ sudo yum -y remove docker docker-common container-selinux  docker-selinux docker-engine

     2)安装

 官网:https://docs.docker.com/engine/installation/linux/centos/

官网安装解释:https://www.cnblogs.com/zhishuai/p/8017876.html

 建议生产环境按照安装说明中的选择安装稳定版本

选择你要安装的Docker版本:
Docker CE :Docker Community Edition.      $ sudo yum -y install docker-ce-<VERSION_STRING>
例如:# yum install -y docker-ce-17.06.1.ce

查看版本:

Docker学习记录--入门了解+安装

3)启动docker

service docker start
# 或者
systemctl start docker