Docker入门-安装

在这里插入图片描述

Docker简介

首先,抛出概念,docker是LinuX Container(LXC,Linux容器)的封装.
至于LXC是什么,和你一样,包括我本身在内,很多人都不会使用它,这也就是docker火爆的原因,因为LXC的操作十分复杂,而且普通的开发人员很少接触(运维工程师可能会接触到),所以在docker之前一般都是用虚拟机来解决环境配置问题的.

Docker对比虚拟机的优势

1.启动快:
虚拟机:传统的虚拟机如VMware WorkStation,Virtual Box,是基于kernel级别的虚拟化,相当于一个OS,所以启动的时候相当于启动一个系统.
docker:相当于启动一个容器进程,相当之快.
2.资源占用少:
虚拟机:虚拟机创建时,需要指定分配cpu,内存,硬盘等资源,拿内存来说,只要你启动了虚拟机,内存资源就被划走了,虽然你的虚拟机中真正运行的程序可能只需要1M内存.
docker:容器只占用所需的资源.
3.体积小:
虚拟机:由于是OS,所以安装完成后至少要占用到几十G的空间.
docker:非常小,一个CentOS的容器只要几十M.

Docker架构

先上图:
在这里插入图片描述
大体上Docker分为3大块:Client,DOCKER_HOST,Registry

  1. Client:docker客户端,发起docker命令请求.
  2. DOCKER_HOST:docker主机,docker主机内部也可大致划分为3部分,
    Docker Daemon:docker主机内的守护进程,用来监听接收来自于Client端的请求,并负责从Docker的Registry下载镜像文件,创建容器.
    Containers:docker容器,独立运行的一个或一组应用,镜像运行的实体.
    Images:镜像,用来创建Docker容器.
  3. Registry:记录docker镜像仓库信息,存放docker镜像.

Docker的应用

  1. 提供一次性的环境,比如开发可以在本地用docker来模拟生产环境来进行部署,和测试.
  2. 提供弹性的云服务,因为Docker可以随时开关,因此可以做到弹性扩容.
  3. 提供微服务搭建,docker容器非常的轻量级,可以在一台主机上通过docker跑多个服务,来模拟微服务环境.

Docker安装

Docker现在有3个版本:
Docker Community Edition
Docker Enterprise Edition
Moby
原本docker是一个完全开源的项目,据说在2017年初,docker公司将原本的docker改名为Moby,而推出了2个新的版本,Docker CE和Docker EE,CE免费,EE收费.一般用途CE足以.
下面以CentOS+Docker CE为例来演示:

CentOS下的Docker下载链接
注意,直到Linux内核版本3.8+才完全的支持docker据说是用户空间虚拟化的问题,其他版本是否更新修复不了解,所以请用CentOS 7

按照官方文档操作,首先要移除旧版本的docker:

sudo yum remove docker \
                  docker-client \
                  docker-client-latest \
                  docker-common \
                  docker-latest \
                  docker-latest-logrotate \
                  docker-logrotate \
                  docker-engine

安装方式可参照官方文档自行选择,这里用官方推荐的从Docker Registry安装.
在这里插入图片描述
首先,配置docker仓库

  1. 安装需要的包.yum-utils提供了yum-config-manager功能,device-mapper-persistent-data和lvm2是devicemapper存储驱动所以来的包.
sudo yum install -y yum-utils \
device-mapper-persistent-data \
lvm2
  1. 配置docker需要用到的yum仓库
sudo yum-config-manager \
--add-repo \
https://download.docker.com/linux/centos/docker-ce.repo
  1. 使用yum来安装docker ce版本
# 这里使用的是上一步配置的官方的仓库,速度可能会很慢,可以在选择手动下载rpm包,进行安装,
#(windows下会快好多)
sudo yum install -y docker-ce docker-ce-cli containerd.io
  1. 启动docker服务,查看版本
sudo systemctl start docker
docker -v
  1. 由于国内使用docker官方仓库下载速度很慢,我们配置一下加速镜像,下面自选,第一个是docker官方为中国提供的地址,但是速度也很慢.

https://registry.docker-cn.com
http://hub-mirror.c.163.com
https://3laho3y3.mirror.aliyuncs.com
http://f1361db2.m.daocloud.io
https://mirror.ccs.tencentyun.com

# /etc/docker/daemon.json是docker的配置文件
mkdir -p /etc/docker
sudo touch /etc/docker/daemon.json
# 在文件中添加镜像信息
{
"registry-mirrors": ["http://hub-mirror.c.163.com"]
}
# 修改后记得重启docker服务
systemctl restart docker
  1. docker的hello world
# 默认在library下,所以可以省略
sudo docker run library/hello-world
or
sudo docker run hello-world

从启动过程可以看出,启动容器时,首先在本地查找镜像,如果本地则会去docker hub下载.
在这里插入图片描述
好了,docker的安装到此完成.

发布了62 篇原创文章 · 获赞 3 · 访问量 2万+

猜你喜欢

转载自blog.csdn.net/Leonardy/article/details/103626869
今日推荐