docker——简介+安装+基础命令+镜像加速+dockerfile

本文介绍了Docker的基本概念、与虚拟机的区别、使用场景及三大核心——镜像、容器和仓库。详细阐述了Docker的安装过程、镜像加速设置,并通过`hello-world`测试验证安装。此外,列举了常用Docker命令,包括镜像管理和容器操作。还探讨了Dockerfile的作用和使用,以及如何将本地镜像推送到阿里云仓库。
摘要由CSDN通过智能技术生成

1.docker简介

Docker作为开源社区最火爆的项目,它是在Linux容器里运行应用的开源工具,是一种轻量级的“虚拟机”

2.Docker与虚拟机的区别

在这里插入图片描述
传统的虚拟化技术的体系架构
在这里插入图片描述
可见,我们在宿主机的操作系统上,可安装多个虚拟机,而在每个虚拟机中,通过虚拟化技术,实现了一个虚拟操作系统,随后,就可以在该虚拟操作系统上,安装自己所需的应用程序了。
我们知道,启动虚拟机就像启动一台计算机,初始化过程是相当慢的,需要等很久,才能看到登录界面。一旦虚拟机启动以后,就可以与宿主机建立网络连接,确保虚拟机与宿主机之间是互联互通的。不同的虚拟机之间却是相互隔离的,也就是说,彼此并不知道对方的存在,但每个虚拟机占用的都是宿主机的硬件与网络资源。

Docker技术的体系架构
在这里插入图片描述

可见,在宿主机的操作系统上,有一个 Docker 服务在运行(或者称为“Docker 引擎”),在此服务上,我们可开启多个 Docker 容器,而每个 Docker 容器中可运行自己所需的应用程序,Docker 容器之间也是相互隔离的,同样地,都是占用的宿主机的硬件与网络资源。
Docker 容器相对于虚拟机而言,除了在技术实现上完全不一样以外,启动速度较虚拟机而言有本质的飞跃,启动一个容器只在眨眼瞬间。不管是虚拟机还是 Docker 容器,它们都是为了隔离应用程序的运行环境,节省我们的硬件资源,为我们开发人员提供福利。

Docker的使用场景

现在需要能方便地创建运行在云平台上的应用,必须要脱离底层的硬件,同时还需要任何时间、地点可获取这些资源,这正是Docker所能提供的。
Docker的容器技术可以在一条主句上轻松为任何应用创建一个轻量级的、可移植的、自给自足的容器。通过这种容器打包应用程序,意味着简化了重新部署、调试这些琐碎的重复工作,极大地提高了工作效率。
比如:服务器从腾讯云迁移到阿里云,如果采用了Docker容器技术,迁移只需要在新的服务器上启动需要的容器即可。

Docker的三大核心

1)Image(镜像)
镜像是创建docker容器的基础,docker镜像类似于虚拟机镜像,可以将它理解为一个面向docker引擎的只读模块,包含文件系统。镜像可以用来创建Docker容器,一个镜像可以创建多个容器

Docker提供了简单的机制来创建和更新现有的进行,用户也可以从网上下载已经做好的应用进行来直接使用。

2)Container(容器)
容器是从镜像创建的应用运行实例,容器之间是相互隔离、互不可见的。可以把容器看做一个简易版的linux系统环境(包括root权限、进程空间、用户空间和网络空间等),以及运行在这个环境上的应用打包而成的应用盒子。它可以被启动、开始、停止、删除,每个容器都是相互隔离的、保证安全的平台

3)Repository(仓库)
Docker仓库是用来集中保存镜像的地方,当创建了自己的镜像之后,可以使用命令将它上传到公有仓库或私有仓库,这样一来当下次要在另外一条机器上使用这个镜像是,只需从仓库拉取下来即可!

仓库注册服务器是存放仓库的地方,其中包含了多个仓库,每个仓库集中存放某一类镜像,并且使用不同的标签来区分它们。目前最大的公有仓库Docker Hub,存放了数量庞大的镜像提供用户下载使用。

总结:
**Docker本身是一个容器运行载体或称之为管理引擎,我们把应用程序和配置依赖打包好形成一个可交付的运行环境,这个打包好的运行环境就似乎image镜像文件。只有通过这个镜像文件才能生成Docker容器。image文件可以看作是容器的模板,Docker根据image文件生成的示例,同一个image文件可以生成多个同时运行的容器实例。**

**image文件生成的容器实例,本身也是一个文件。称之为镜像文件**

****一个容器运行一种服务。当我们需要的时候,就可以通过docker客户端建立一个对应的运行实例。也i就是我们的容器**

**至于仓库。就是放了一堆镜像的地方,我们可以把镜像发布到仓库中,需要的时候从仓库中拉下来就可以了**

安装Docker

1.检查内核版本,返回的值大于3.10即可。

[root@zjz ~]# uname -r

在这里插入图片描述
2. 如果安装过请先卸载,我这里没装过。

[root@zjz ~]# yum remove docker \
> docker-client \
>  docker-client-latest \
> docker-common \
> docker-latest \
> docker-latest-logrotate \
>  docker-logrotate \
> docker-engine

在这里插入图片描述
3.安装依赖

[root@zjz ~]# yum install -y yum-utils device-mapper-persistent-data lvm2

在这里插入图片描述
4.设置yum仓库

[root@zjz ~]# yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

在这里插入图片描述

//查看docker-ce可用版本
yum list docker-ce.x86_64 --showduplicates | sort -r
//这里我们下载指定版本18.9.0,注意并没有采取阿里云官方推荐的方法, 我们分别下载了docker-ce,docker-ce-cli和containerd.io这3个组件。
yum -y install docker-ce-18.09.0-3.el7 docker-ce-cli-18.09.0-3.el7 containerd.io-1.2.10-el7

5.安装最新版本docker

[root@zjz ~]# yum -y  install docker-ce docker-ce-cli containerd.io

在这里插入图片描述
6.启动并加入开机启动

[root@zjz ~]# systemctl start docker
[root@zjz ~]# systemctl enable docker

在这里插入图片描述
7.验证是否安装成功

[root@zjz ~]# docker version

在这里插入图片描述
不过一般不需要那么多信息,所以一直用的是docker -v命令
在这里插入图片描述

————————————————————————————————————————————————————————————————————————————————安装完成了,也已经简单的测试过了———————————————————————————————————————————————————————————————

docker镜像加速

阿里云镜像获取地址:https://cr.console.aliyun.com/cnhangzhou/instances/mirrors,
登陆后,左侧菜单选中镜像加速器就可以看到你的专属地址了:
在这里插入图片描述
在这里插入图片描述

测试运行hello-world

在这里插入图片描述
————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————

docker常用命令

一.帮助命令

docker version
显示 Docker 版本信息。
docker info
显示 Docker 系统信息,包括镜像和容器数。
docker --help
docker 命令帮助

Commands:
    attach    Attach to a running container   
  • 3
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值