docker (一)

在写这个文章之前先说一件事,上次发的那篇文章要提一下。当时打码没有打好,可能会对站长造成了不好的影响。 因为有人踩着我的足迹进去了~我承认上一篇的做法有点娱乐圈,但是我真的想装X,我打码干嘛,直接挂黑页放出来不就得了。其实主要是思路,因为玩这个有时候这样子会比较有趣一点。没什么技术含量~也希望不要有人搞破坏,因为我拿到权限都是扔那边~基本都是好朋友木头在做下一步挖掘利用,我只想低调学习分享技术~我也懒得帮站长修复了,甚至好多漏洞我都懒得去向SRC提交…对我来说这种东西没意义,我有那么多时间我还不如去多学点东西,多陪陪家人,找找朋友聊聊天~看到那个朋友也没搞什么破坏,而且也不是什么大站点,影响都是可控的,所以我才不会花心思溯源什么的呢。大家玩玩也没什么,尽量不要做一些过份的操作,比如:rm –rf /* 之类的..网络安全法去年通过了,有些线越过去就是刑事责任了。 大家都比我懂,春节要到了,大家新年快乐~ 没有礼物,哈哈哈。

00x1 什么是docker?

说到这个就要说集装箱的故事了….

集装箱,英文名container。是指具有一定强度、刚度和规格专供周转使用的大型装货容器。使用集装箱转运货物,可直接在发货人的仓库装货,运到收货人的仓库卸货,中途更换车、船时,无须将货物从箱内取出换装。因此集装箱是一种伟大的发明。

而Docker就是软件工业上的集装箱。有人可能误以为Docker是虚拟机,实际上不是的。虚拟机是硬件虚拟化技术,在虚拟的硬件上运行操作系统;而Docker是操作系统虚拟化技术,在虚拟的系统上运行一些进程。举个栗子:如果大家有安装360,那么就知道有一些威胁文件会被360的沙盒隔离运行,在沙盒里面判断行为,看是否有恶意的代码。下图是docker的基本结构图:

00x2云计算服务的几种分类

1. 基础设施即服务(Infrastructureas a service),通常指的是在云端为用户提供基础设施,如:虚拟机、服务器、存储、负载均衡、网络等等。亚马逊的AWS 就是这个领域的佼佼者,国内则以阿里云为首。

2. 平台即服务(Platformas a service),通常指的是在云端为用户提供可执行环境、数据库、网站服务器、开发工具等等。国外的 OpenShift, Red Hat, Cloudera,Cloud Foundry, Google App Engine 都是这个领域的,当然还有一个非常有名的公司,那就是 dotCloud,后续我会再介绍一下这个公司。

3.软件即服务(Software as a service),通常指的是在云端为用户提供软件,如CRM 系统,邮件系统,在线协作,在线办公等等。比如微软就把自己的 Office搬到了云端,国内的有道、麦客、Tower 都是属于这个领域的。

一般认为这三种模式,是最基本的云服务模式,其分层结构如下图:

从云计算服务的三层架构,我们可以看出传统的 IaaS 层(Infrastructure as a service),虚拟机是最基础组成部分,而虚拟机都是基于 Hyper-V架构的,也就是说每一个虚拟机都会运行一个完整的操作系统,一个操作系统至少需要占用 5G 左右的磁盘空间,但是操作系统对于我们来说完全无用的,我们关心的是虚拟主机所能提供的服务。因此,我们迫切需要轻量级的主机,那就是Docker 容器。

云计算的需要促进了docker的发展,因为目前的通信技术已经达到一个瓶颈,只有从提高虚拟主机的技术这一块入手让云更加完善!

因为 Docker 主要是运行在 Linux 下的,而且它的基础镜像也是基于 Linux;而公有云的话是日后的一个趋势,也是 Docker 为什么这么火热的的促成因素。

00x3 ubuntu下安装docker

安装docker有两种方法:

一种是用官方的bash脚本一键安装。

直接一条命令就解决了:$ curl -sSLhttps://get.docker.com/ | sh

另一种是一步一步的安装,为了更深入理解docker,我们选择一步步安装。

Docker 需要使用 Linux 中内核的 CGroups 和 Namespace 功能,PS:Cgroups是control groups的缩写,是Linux内核提供的一种可以限制、记录、隔离进程组(process groups)所使用的物理资源(如:cpu,memory,IO等等)的机制。最初由google的工程师提出,后来被整合进Linux内核。Cgroups也是LXC为实现虚拟化所使用的资源管理手段,可以说没有cgroups就没有LXC。

1.查看系统版本

安装docker 必须使用包含这两项功能的 Linux 内核,所以内核必须是高于 3.10 的 64 位系统,可以通过 uname -r 查看当前的内核版本。我这里的系统内核版本比较高:

我们要用到root权限来更新下我们的apt源,国内的GFW你懂的…

操作步骤如下:

2.更新apt源

我们进入/etc/apt/sources.list.d/这个目录,新建一个ghostcloud.list 文件(可以是任一文件名),然后加入一行: deb http://mirrors.163.com/ubuntu/ trustymain,这个是网易的镜像库。

3. 将新加的文件对应的仓库信息加到 apt 系统中

apt-get update

更新完成安装 https 的 CA 证书

apt-get install apt-transport-httpsca-certificates

4. 添加 GPG key,这是访问 docker 源的公钥

root@ghostcloud:~#apt-key adv –keyserver hkp://p80.pool.sks-keyservers.net:80 --recv-keys58118E89F3A912897C070ADBF76221572C52609D

5.再次更新下

apt-get update

6. 安装 Docker

$ sudo apt-getinstall docker-engine

7.开始使用docker

$ sudo servicedocker start

确认docker已被正确安装

$ sudo docker runhello-world

原文发布于微信公众号 - 晨星先生(MoXuanIT)

原文发表时间:2017-01-26

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏双十二技术哥

Android性能优化(九)之被忽视的电量

移动互联网的大潮到来之后,我们都变身好男人:“用智能手机的男人都是好男人,因为晚上必须回家充电。”一句笑言,但也可以看得出来目前使用智能设备电量方面的问题。

29930
来自专栏猿湿Xoong

怎么用TWRP刷LineageOS拯救我的Android手机?

1K40
来自专栏FreeBuf

百度软件中心版putty被曝恶意捆绑软件

近日,微步社区出现一则新情报,名为RTFM的用户发表文章《被污染的百度下载,被捆绑的Putty,为什么受伤的总是程序员?!》,引来网友热议。

15940
来自专栏宝哥的专栏

Docker系列学习文章 - 什么是容器技术?(一)

容器这个词,当你第一眼看它或许脑子里是这东西:瓶瓶罐罐、装水、装其他东西的玩意。

3.3K390
来自专栏知无涯

Ubuntu 15.10 中文桌面版/服务器正式版下载 - 华丽免费易于入门的 Linux 操作系统

705100

使用Bluemix,NoSQL DB和Watson创建云应用程序

大家好,自从我上次写文章已经很久了。事实上,这几年,我总是忙于工作。我现在是IBM的Bluemix平台的云架构师。我在Tomcat服务器上用Web应用程序编写了...

19960
来自专栏web开发

Node.js包管理器Yarn的入门介绍与安装

FAST, RELIABLE, AND SECURE DEPENDENCY MANAGEMENT. 就在前不久, Facebook 发布了新的 node.js ...

27760
来自专栏用户画像

流水时空图

指令流水线有“取指”IF、“译码”ID、“执行”EX、“访存”MEM、“写回”WB五个过程段,共有20条指令连续输入此流水线。

13920
来自专栏编程一生

架构师之路--从业务角度谈缓存的选型

20550
来自专栏智能大石头

MF前传——探索者二号简介

    因为探索者一号供不应求,远超预期,并且我们自己设计制造的成本太高,所以没有再次生产。而是选择较高性价比的第三方STM32开发板作为MF学习板,是为探索者...

10400

扫码关注云+社区

领取腾讯云代金券