• 中文
    • English
  • 注册
  • 查看作者
  • Docker:基础篇

    一. 前言

    最近在搭建GitHub上macrozheng大佬的mall项目,该项目是部署在Docker中,正好借此机会,学习一下Docker。

    如果你百度一下Docker,基本上看个三五篇文章还是一脸懵逼,上来都是先给你讲一堆底层原理或者不知所云的东西,分分钟把你劝退。

    最后在看了JavaGuide和3y两个大神的文章后,才略有所懂,所以接下来根据这两个大神的文章,加上自己的理解,抛弃那些专业术语,用大白话来讲解一下,希望能够给初学者培养起一点信心。

    二. Docker简介

    1.Docker能干嘛?

    简单说,Docker最主要能够实现两大功能:

    • Docker能够将你所需要的开发环境一键打包成镜像,需要的时候直接从Linux中拉取就可以了。

    • Docker能够将容器隔离。

    举个例子,在使用Docker之前,想把自己的Java项目跑在服务器上,需要在服务器中一个个安装Tomcat、JDK、Mysql、Nginx等等各种软件,而使用了Docker之后,我们只需要从网上拉取Java项目所需的镜像,然后把代码扔进去就可以运行。

    再举个例子,之前我有个服务器上跑了php的项目,并安装了Apache,之后我又想把一个Java项目也放上面,而且准备使用Nginx,却一直报错,网上查询说是因为Apache和Nginx不兼容,明明是两个互不相干的项目,却产生了兼容的问题,使用Docker后,该问题便得到了很好的解决,PHP项目使用有Apache的容器,Java项目使用有Nginx的容器,两者互不干扰。

    2. 关键字解释:

    • Image:镜像

    • Container:容器

    • Repository:仓库

    • Dockerfile:镜像源码

    Docker的架构图:

    Docker:基础篇

    这几者的联系可以用Docker的架构图来解释,

    • 首先Docker Registry 中存的是一个个仓库,比如上图Registry 模块中的centos,Python等等都是一个个仓库

    • 每个仓库都对应同一个软件的不同的版本,比如centos有6、7等等各种版本,每个版本都是一个镜像

    • 当我们从Registry 中下载一个个镜像到本地时,这些镜像都存在了images中,可以使用docker images查看本地安装了哪些镜像

    • 通过不同的镜像可以构建出不同的容器,所有的容器都存在Containers中

    三. 安装Docker

    1.  安装yum-utils

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

    2. 为yum源添加docker仓库位置

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

    这里采用了阿里云的镜像地址,官方的下载docker太慢了

    3. 生成缓存

    yum makecache fast

    4.  安装docker (ce版)

    yum install docker-ce
    
    同时给出卸载docker的命令
    yum -y remove docker docker-common docker-selinux docker-engine

    5.  启动doker

    systemctl start docker

    未完待续。。。

  • 0
  • 4
  • 0
  • 2.5k
  • llxzuishuaizjmarinaMI

    请登录之后再进行评论

    登录
  • 0
    @llxzuishuai 22
  • 0
    @llxzuishuai 11
  • 0
    ddddd
  • 2
    fffffffffff
  • 单栏布局 侧栏位置: