zoukankan      html  css  js  c++  java
  • [Docker]学习笔记--简单介绍

    学习docker已经有一段时间了,一直没有静下心来好好总结一下。

    最近用docker搭了一整套Gitlab的持续集成环境。(会在下一篇中详细的讲解具体步骤,敬请期待)

    感觉是时候写点东西和大家一起分享了,如果写的不好还请帮忙指正。

    先从docker的一些官方网站说起。

    1. www.docker.com

      这个是docker的官网,经常参考的是Install&Docs,学会这里面的所有内容你就是docker使用的大师(...)了。

    2. http://index.docker.io/

      介绍这个网站要稍微多说一点,docker的目的是把环境(image)打包分享,所以需要一个存这些环境(image)的地方,方便大家去查找和分享,这个网站就是干这个的了。称为public registry(有经验的同学可能注意到了,既然有public,那肯定有private了。是的,我们也可以搭建自己的private registry,方便局域网内的人进行image共享,搭建方法会在后续的章节中介绍)。

      就像App Store/安卓市场一样,说不定以后真的会变成和App Store/安卓市场一样的使用方式呢。(这句只代表本人想法,不同意请忽略)

    3. https://github.com/ 

      大家可能奇怪为什么会和github有关系呢,因为docker的环境是可以通过build文件(Dockerfile)来自动编译出来的,docker中提到的automated build可以根据在github中存放的build文件来自动编译出image,然后push到public registry中。

    4. Linux基础知识

      因为docker是在linux container基础上发展起来的,所以对于linux的了解还是少不了的。

      这个可以在使用docker过程中慢慢学习,毕竟涉及的命令太多了。

    5. Git(optional)

      这个是可选的,因为docker的很多命令和git差不多,如果之前用过git,那docker命令学起来就方便多了。

    接下来简单介绍下为什么用docker呢?

    拿一个简单的例子来说明一下,作为一个开发者,我想要搭建一个mysql的环境,一般的步骤是:download -> install -> configure -> use.

    尤其是configure,如果没有经验,还需要在网上查找资料,各种各样的配置信息都会被你搜出来,浪费时间和精力。

    如果另一个开发者,也需要一个mysql的环境,又需要这么来一边。

      第一个问题,为什么不能有现成的呢?

      答案是:有,使用VM, 搭建好后,把VM Template进行共享。

      但是VM会引出其它的问题:

        1. 占用空间大,动不动就几G, 里面有太多和运行mysql无用的程序和进程,和一整套的底层OS.

        2. 一旦以后底层OS换了,原来的MySQL配置还好不好用,就需要进行测试了。

      所以需求来了,不能有这么一套既轻量级,又统一的mysql的环境吗?

      可以把 download -> install -> configure -> use 过程变成 use 吗?

      答案是:docker,用docker registry提供的mysql image。pull下来后可以直接使用。

      只要保证从开发,到最终上线都用相同的mysql image,就不会有兼容性的问题。

    上面只是一个简单的例子,想了解详情,请查看https://docs.docker.com/#why-docker

    一个统一的mysql image可以代替网上各种各样的mysql配置信息,对于开发者来说方便快捷。

    docker是一个面向开发者使用的软件。

    更详细的信息可以参考上面提供的链接。

  • 相关阅读:
    3、Semantic-UI之定义容器
    2、Semantic-UI之网格布局
    1、Semantic-UI之开发环境搭建
    PyCharm创建普通项目配置支持jinja2语法
    CentOS 7安装GitLab、汉化、配置邮件发送
    Docker swarm 实战-部署wordpress
    线程和进程
    NGINX内置变量
    iTerm2 + Oh My Zsh 打造舒适终端体验
    CentOS 7修改网卡名称
  • 原文地址:https://www.cnblogs.com/lemonbar/p/3893398.html
Copyright © 2011-2022 走看看