Docker基本简介安装

一、Docker基本简介

1.Docker三要素

  1. 镜像
    镜像(images):一个面向Docker容器引擎的只读模板

  2. 容器
    容器 (Container):从镜像创建的运行实例

  3. 仓库
    仓库 (Repository):集中保存镜像的地方;分公有和私有仓库
    1.public(公有仓库)
    是开放给用户使用、允许用户管理镜像的 Registry 服务
    2.private(私有仓库)
    除了使用公开服务外,用户还可以在本地搭建私有 Docker Registry

2. 容器种类

  1. Linux容器
    最初的Linux容器技术是Linux容器,通常称为LXC。LXC是Linux操作系统级别的虚拟化方法,用于在单个主机上运行多个隔离的Linux系统。
  2. Docker
    Docker起初是一个构建单一应用程序LXC容器的项目,它对LXC进行了多次改造,使容器更加便携和灵活使用。后来它变成了自己的容器运行环境。从较高的层次上讲,Docker是一个Linux实用程序,可以有效地创建,运送和运行容器。

3. 虚拟机与容器的区别

Docker以容器的方式实现了应用程序的隔离,隔离和安全性可以给主机上同时运行多个容器。容器时轻量级的,因为不需要要管理撑的额外负担,而时直接在主机的内核中运行。

与虚拟机相比,可以在给定的硬件组件上运行更多的容器,甚至可以在虚拟机的主机中运行docker

特性容器虚拟机
启动速度秒级分钟级
硬盘占用一般为MB一般为GB
运行性能内核运行几乎无损失5%左右损失
系统支持量单机支持上千个容器一般几十个
隔离性进程级别系统级别
操作系统主要Linux几乎所有
封装程度只打包项目代码和依赖关系,共享宿主机内核完整的操作系统,与宿主机隔离

4.Docker的优点

  1. 更快速的交付和部署
    对于开发与运维人员来说,最希望的就是一次创建或配置,可以在任意的地方正常运行,Docker是可以快速创建容器,快速迭代(重复反馈的活动)应用程序,并且还让整个过程全程可见,可以让使用这个应用程序的人更容易的理解它是如何创建与工作的,另外Docker容器它的启动时间是秒级的,可以大大节约开发、测试、部署的时间。
  2. 更高效的虚拟化
    Docker 容器的运行不需要额外的 hypervisor 支持,它是内核级的虚拟化,因此可以实现更高的性能和效率的虚拟化。
  3. 更轻松的迁移和扩展
    Docker 容器几乎可以在任意的平台上运行,包括物理机、虚拟机、公有云、私有云、个人电脑、服务器等。这种兼容性可以让用户把一个应用程序从一个平台直接迁移到另外一个。
  4. 更简单的管理
    使用 Docker,只需要小小的修改,就可以替代以往大量的更新工作。并且所有的修改都以增量的方式被分发和更新,从而实现自动化并且高效的管理。

5.Docker的应用场景

  1. Web 应用的自动化打包和发布。
  2. 自动化测试和持续集成、发布。
  3. 在服务型环境中部署和调整数据库或其他的后台应用。
  4. 从头编译或者扩展现有的 OpenShift 或 Cloud Foundry 平台来搭建自己的 PaaS 环境。

二、docker的安装

  1. 环境部署
[root@docker ~]# systemctl stop firewalld
[root@docker ~]# setenforce 0
[root@docker ~]# vi /etc/selinux/config 
SELINUX=disabled
  1. 安装依赖包
yum install -y yum-utils device-mapper-persistent-date lvm2
  1. 设置阿里云镜像源
yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

3.安装Docker-CE(社区版docker)

yum -y install docker-ce
  1. 启动服务与自启动
systemctl start docker
systemctl enable docker
  1. 查看docker版本
docker  version
  1. 查看docer信息
docker  info

三、镜像

  1. 镜像加速
    阿里云查找个人镜像加速
    在这里插入图片描述
  2. 重新加载服务配置文件并重启
systemctl daemon-reload
systemctl restart docker

重启后镜像地址变为阿里云的地址

  1. 配置路由转发
[root@localhost ~]# vim /etc/sysctl.conf 
net.ipv4.ip_forward=1
[root@localhost ~]# sysctl -p
[root@localhost ~]# systemctl restart docker
  1. 查看镜像信息
docker search nginx
  1. 下载镜像
docker  pull  nginx

  1. 查看下载镜像信息
[root@docker ~]# docker images
REPOSITORY            TAG       IMAGE ID       CREATED         SIZE
nginx                 latest    f6d0b4767a6c   7 weeks ago     133MB
nginx                 web       f6d0b4767a6c   7 weeks ago     133MB
#存储库               #标签       #镜像ID         #创建时间       #大小      
  1. 获取镜像详细信息
docker inspect nginx:latest 
  1. 为镜像添加新标签
docker tag nginx:latest nginx:web
  1. 删除镜像
    (如果镜像已经创建容器,需要停止运行容器)
    9.1 通过标签删除 (docker rmi nginx:web )
[root@docker ~]# docker images
REPOSITORY            TAG       IMAGE ID       CREATED         SIZE
nginx                 latest    f6d0b4767a6c   7 weeks ago     133MB
nginx                 web       f6d0b4767a6c   7 weeks ago     133MB
[root@docker ~]# docker rmi nginx:web
Untagged: nginx:web
[root@docker ~]# docker images
REPOSITORY            TAG       IMAGE ID       CREATED         SIZE
nginx                 latest    f6d0b4767a6c   7 weeks ago     133MB

9.2 通过镜像ID删除(docker rmi f6d0b4767a6c)

[root@docker ~]# docker images
REPOSITORY            TAG       IMAGE ID       CREATED         SIZE
nginx                 latest    f6d0b4767a6c   7 weeks ago     133MB
[root@docker ~]# docker rmi f6d0b4767a6c
Untagged: nginx:latest
Untagged: nginx@sha256:10b8cc432d56da8b61b070f4c7d2543a9ed17c2b23010b43af434fd40e2ca4aa
··········
[root@docker ~]# docker images
REPOSITORY            TAG       IMAGE ID       CREATED         SIZE

批量删除镜像

docker images | awk '{print "docker rmi "$3}' | bash
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值