我是张飞洪,钻进浩瀚代码,十年有余,人不堪其累,吾不改其乐。我喜欢把玩代码,琢磨词句!代码算法让我穿透规律,文章摘句让我洞察人情。如果你觉得和我的看法不一样,请关注我的头条号,那我们一定合得来。

Docker翻译为码头工人,有什么用意?注意看图!

集装箱相当于容器,集装箱≈主程序+依赖包;为了保证自己的程序不受系统等环境影响,发布的时候,只需要把自己的集装箱从A船搬运到B船就可以了,这里的船可以理解成服务器。所以对运维来说,Docker是巨大的福音。因为,可以不用考虑各种不兼容,不用考虑安装这个漏了那个,只要拿到一个生成集装箱的模板,即镜像。可以生成N多的服务了。

如果要用Docker来部署一个GitLab,怎么做呢?一段代码的事,请看代码!

sudo docker run --detach

--hostname 172.16.0.247

--publish 443:443 --publish 80:80 --publish 8888:22

--name gitlab

--restart always

--volume /srv/gitlab/config:/etc/gitlab

--volume /srv/gitlab/logs:/var/log/gitlab

--volume /srv/gitlab/data:/var/opt/gitlab

接下来访问http://172.16.0.247,就可以看到效果了,请看图示!

GitLab首页

这段神奇的代码都做了什么?

首先,他会到云镜像仓库,类似AppleStore获取GitLab镜像模板,然后根据镜像启动一个GitLab容器。注意,容器的启动和停止都是秒级的。不用于VMware等虚拟机,Docker底层和操作系统是共享资源,很轻量。传统虚拟机是完全启动一个独立系统,特点就是笨、慢。Docker可以在一台服务器同时启动上千个虚拟容器,VMware表示望尘莫及。

Docker和虚拟机对比

左图的虚拟机,做OS上还有三个Guest OS,右边的容器共享一个OS,知道底层的架构,那么二则的对比就一目了然,献上对比图:

Docker的强大你感受到了没,看官,这是冰上一角,还有更精彩的功能吗?有,且听下回分解!

如果对Docker有更深的洞察,欢迎补充和讨论,感谢您的捧场。我是张飞洪,我为博客园的读者写故事。我会给你呈现程序员眼中的世界,请关注我的头条号

Docker深入浅出系列教程——Docker初体验的更多相关文章

  1. Docker深入浅出系列教程——Docker简介

    我是架构师张飞洪,钻进浩瀚代码,十年有余,人不堪其累,吾不改其乐.如果你和我的看法不一样,请关注我的头条号,我们一起奇闻共赏,疑义相析. 本节属于入门简介,从三个小方面进行简单介绍Docker. Do ...

  2. Docker深入浅出系列 | 容器初体验

    目录 Docker深入浅出系列 | 容器初体验 教程目标 预备工作 容器与虚拟化技术 什么是Docker 为什么要用Docker 事例 什么是容器镜像和容器 容器与虚拟机的区别 Vagrant与Doc ...

  3. Docker深入浅出系列 | 单节点多容器网络通信

    目录 教程目标 准备工作 带着问题开车 同一主机两个容器如何相互通信? 怎么从服务器外访问容器 Docker的三种网络模式是什么 Docker网络通信原理 计算机网络模型回顾 Linux中的网卡 查看 ...

  4. Docker深入浅出系列 | Image实战演练

    目录 课程目标 Container与Image核心知识回顾 制作Docker Image的两种方式 Dockerfile常用指令 Image实战篇 通过Dockerfile制作Image 通过Dock ...

  5. Docker深入浅出系列 | 容器数据持久化

    Docker深入浅出系列 | 容器数据持久化 Docker已经上市很多年,不是什么新鲜事物了,很多企业或者开发同学以前也不多不少有所接触,但是有实操经验的人不多,本系列教程主要偏重实战,尽量讲干货,会 ...

  6. Docker深入浅出系列 | 单机Nginx+Springboot实战

    目录 Nginx+Springboot实战 前期准备 实战目标 实战步骤 创建Docker网络 搭建Mysql容器 搭建额度服务集群 搭建Nginx服务 验证额度服务 附录 Nginx+Springb ...

  7. Docker深入浅出系列 | Docker Compose多容器实战

    目录 前期准备 Docker Compose是什么 为什么要用Docker Compose Docker Compose使用场景 Docker Compose安装 Compose Yaml文件结构 C ...

  8. Docker深入浅出系列 | Swarm多节点实战

    目录 前期准备 Swarm基本概念 什么是Docker Swarm 为什么要用Swarm Swarm的网络模型 Swarm的核心实现机制 服务发现机制 负载均衡机制Routing Mesh Docke ...

  9. Docker深入浅出系列 | 5分钟搭建你的私有镜像仓库

    Docker已经上市很多年,不是什么新鲜事物了,很多企业或者开发同学以前也不多不少有所接触,但是有实操经验的人不多,本系列教程主要偏重实战,尽量讲干货,会根据本人理解去做阐述,具体官方概念可以查阅官方 ...

随机推荐

  1. 如何在BIOS中设置RAID?

    随着价格的下降和相应主板的支持,目前SATA硬盘已经逐渐成为主流.但由于受芯片组和操作系统的影响,不少用户对SATA硬盘的使用及安装系统掌握不足,今天小编就给大家介绍一下SATA硬盘的日常应用技巧,希 ...

  2. Error:dojo.data.ItemFileWriteStore:Invalid item argument

    1.错误描述 dijit.form.ComboBox TypeError:_4e is undefined                                            Sea ...

  3. CentOS恢复系统启动grub1.5,2阶段

    1.模拟CentOS7系统/boot下文件全丢失 rm -rf  /boot/* 2.重启系统,并进入救援模式 3.将救援光盘路径切换回原来的系统磁盘根路径 chroot /mnt/sysimage ...

  4. Linux系统 awk sed R脚本 python脚本传入变量

    sed 传入变量: chrI="chr2";sed -n "/$chrI/p" clippointpos.csv  #变量用$var表示,把sed的单引号变为双 ...

  5. jquery 动态获得主机地址

    var curWwwPath=window.document.location.href; alert("curWwwPath"+curWwwPath); curWwwPath  ...

  6. Linux之批量挂载硬盘

    ############parted工具分区############### #!/bin/bash #shell脚本开头格式PATH=/bin:/sbin:/usr/bin:/usr/sbin #保证 ...

  7. BZOJ 2683: 简单题(CDQ分治 + 树状数组)

    BZOJ2683: 简单题(CDQ分治 + 树状数组) 题意: 你有一个\(N*N\)的棋盘,每个格子内有一个整数,初始时的时候全部为\(0\),现在需要维护两种操作: 命令 参数限制 内容 \(1\ ...

  8. [SDOI2013]森林

    主席树 离散化后 每个点储存从根到它的路径上的点权 新加边时直接用启发式合并,直接把size小的重构 询问时sum[u]+sum[v]-sum[lca]-sum[fa[lca]]来比较,在树上二分 L ...

  9. JAVA通过COM接口操作PPT

    一. 背景说明 在Eclipse环境下,开发JAVA代码操作PPT,支持对PPT模板的修改.包括修改文本标签.图表.表格.满足大多数软件生成PPT报告的要求,即先收工创建好模板,在程序中修改模板数据. ...

  10. Mac下安装FFmpeg教程

    一.安装ffmpeg 分为两种安装方式: 1. 命令行安装 brew install ffmpeg 2. 下载压缩包安装 去 http://evermeet.cx/ffmpeg/ 下载7z压缩包,解压 ...