Docker是一个开源软件,它可以把一个Linux应用和它所依赖的一切(比如配置文件)都封装到一个容器。然而,Docker与虚拟机不同,它使用了沙箱机制,Docker容器不运行操作系统,它共享主机上的操作系统。下面我将在Ubuntu 14.04安装和使用Docker。
Docker使得在同一个服务器上可以运行更多的应用程序——它通过提供了一个额外的抽象层和操作系统级虚拟自动化。Docker使用Go语言开发,并以Apache 2.0许可证协议发布。

一、Docker的需求

要在Ubuntu 14.04 x64安装Docker,需要确保Ubuntu的版本是64位,而且内核版本需大于3.10版。

  1. 检查Ubuntu的内核版本

    # uname -r 
    3.13.0-55-generic

  2. 更新系统,确保软件包列表的有效性

    # apt-get update

  3. 如果Ubuntu的版本不满足,还需升级Ubuntu

    # apt-get -y upgrade

二、安装Docker

一旦以上需求都满足了,就可以开始安装Docker。Docker最早只支持Ubuntu,后来有了CentOS和其它RedHat相关的发布包。安装很简单,执行命令:

# apt-get -y install docker.io

三、创建链接

创建软链接

 # ln -sf /usr/bin/docker.io /usr/local/bin/docker
# sed -i '$acomplete -F _docker docker' /etc/bash_completion.d/docker.io

四、检查Docker服务

要校验Docker服务的状态,执行以下命令,确保Docker服务是启动的。

# service docker.io status
docker.io start/running, process 14394

要把Docker以守护进程的方式运行,执行以下命令:(注意需先关闭Docker服务)

# docker -d &

五、Docker自启动服务

把Docker安装为自启动服务,让它随服务器的启动而自动运行,执行命令:

# update-rc.d docker.io defaults

六、Docker的用法

下面讲讲述Docker的用法。要查看Docker可以使用的命令,在终端运行docker命令,它会打印所有可用的命令列表及使用描述。

# docker

七、Docker容器下载

下面我们docker命令带pull选项,拉取一个镜像,即从Docker注册服务器的软件仓库下载一个Docker的镜像。
使用的命令如下:

# docker pull ubuntu

此命令的执行会花去一些时间。

八、运行Docker容器

现在可以看到在Bash Shell下建立Ubuntu容器是非常简单的,只需运行一行命令即可。
-i选项:让输入输出都在标准控制台进行
-t选项:分配一个tty

# docker run -i -t ubuntu /bin/bash
root@696d5fd32bba:/#

故,在输出提示中,可以看到使用的标准Ubuntu容器。
现在可以在Ubuntu的Docker容器中使用Bash Shell。如果希望停止/断开连接,可以使用组合键Ctrl-p + Ctrl-q,然后就会返回到早先的窗口。

九、Docker组

创建一个docker用户组,避免使用root用户,并让docker用户组的用户具有同root的权限。

# usermod -aG docker ubuntu

现在可以退出当前用户,使用docker用户登陆了。

十、Docker测试

执行以下命令,查看输出:

docker@ubuntu-14:/root$ docker run hello-world

快照中输出显示,docker用户工作正常。

十一、Docker可用容器

Docker可用的容器可以通过搜索命令查找,社区已经提供了很多可用的容器。如何寻找可用的Docker容器,使用以下命令搜索CentOS的Docker容器。

# docker search centos

十二、结论

本文就是一篇Docker入门资料,要继续深入还会面临不少挑战。

在Ubuntu 14.04安装和使用Docker的更多相关文章

  1. [转]在Ubuntu 14.04安装和使用Docker

    在Ubuntu 14.04安装和使用Docker 作者:chszs,版权所有,未经同意,不得转载.博主主页:http://blog.csdn.net/chszs Docker是一个开源软件,它可以把一 ...

  2. Ubuntu 14.04 安装VMware 12

    /*********************************************************************** * Ubuntu 14.04 安装VMware 12 ...

  3. Ubuntu 14.04安装Chromium浏览器并添加Flash插件Pepper Flas

    转自Ubuntu 14.04安装Chromium浏览器并添加Flash插件Pepper Flash Player Chromium谷歌的开源浏览器将不再支持Netscape浏览器插件API,Adobe ...

  4. ubuntu 14.04 安装搜狗拼音输入法

    原文:ubuntu 14.04 安装搜狗拼音输入法 ubuntu桌面系统下终于有了好用的拼音法-搜狗拼音输入法,欲在ubuntu 14.04下安装搜狗拼音输入法相当的简单. 先到搜狗拼音官网下载对应的 ...

  5. ubuntu 14.04 安装torch及编译环境zbstudio

    ubuntu 14.04 安装torch及编译环境zbstudio torch zbstudio 本来是安装官网给的步骤安装torch的,可是碰到一系列的问题,后来参考网上的安装方法安装成功了 官网安 ...

  6. 基于Ubuntu 14.04构建mysql5.6 Docker镜像

    我们的目的是创建一个基于Ubuntu 14.04 的MySQL的 Docker Image,并且在新创建出来的容器里自动启动MySQL服务接受外部连接 步骤: 1. 首先创建一个目录并在目录下创建一个 ...

  7. ubuntu 14.04 安装svn server (subversionedge )

    ubuntu 14.04 安装subversionedge 请仔细阅读安装包自带的readme文件! 1.先去官网,找安装包: http://subversion.apache.org/ http:/ ...

  8. Ubuntu 14.04 安装 sysrepo v0.7.5

    参考: Tentative gNMI support with sysrepo protobuf-c/protobuf-c Ubuntu 14.04 安装 sysrepo v0.7.5 安装依赖: s ...

  9. Ubuntu 14.04 安装 CUDA 问题及解决

    本文安装环境: - 双显卡: intel 集显 + nvidia 独显 - Ubuntu 14.04.4 - CUDA 8.0.44 1. Deb 安装包是个坑 (不要用这种方法!) 使用 Deb 安 ...

随机推荐

  1. jQuery遍历checkbox

    $("input[type='checkbox']").each(function(){ var value = $(this).val(); //获得值 $(this).attr ...

  2. sql三维数据

    今天有个钢铁项目在导入数据时 存货规格各种缺 相吐血 原表结构是这样的 编码.规格.名称 三种存货 三种都有想同的规格 规格对分厚度和宽度 那么问题来了 简简单单的几个厚度宽度 三种商品 就到了 10 ...

  3. 微博轻量级RPC框架Motan

    Motan 是微博技术团队研发的基于 Java 的轻量级 RPC 框架,已在微博内部大规模应用多年,每天稳定支撑微博上亿次的内部调用.Motan 基于微博的高并发和高负载场景优化,成为一套简单.易用. ...

  4. PHP编码规范PSR-1

    .note-content { font-family: "Helvetica Neue", Arial, "Hiragino Sans GB", STHeit ...

  5. Python学习总结 03 Plotly 学习总结

    一 Plotly 简介 Plotly是另一个免费进行数据分析和绘制图表的APP,建立在d3.js上. Plotly图可下载为SVG,EPS或PNG格式,并简单地导入到Illustrator或者Phot ...

  6. linux显示中文

    设置centos显示中文   怎么设置Linux系统中文语言,这是很多小伙伴在开始使用Linux的时候,都会遇到一个问题,就是终端输入命令回显的时候中文显示乱码.出现这个情况一般是由于没有安装中文语言 ...

  7. ReportServices如何在一页中将报表分成两列显示

    创建两个数据集 DataSet1    DataSet2 DataSet1 SELECT   TOP                    (SELECT   (COUNT(*) + 1) / 2 A ...

  8. MySql 小记

    MySql  简单 小记 以备查看 1.sql概述 1.什么是sql? 2.sql发展过程? 3.sql标准与方言的关系? 4.常用数据库? 5.MySql数据库安装? 2.关键概念 表结构----- ...

  9. 基于ASP.NET MVC(C#)和Quartz.Net组件实现的定时执行任务调度

    http://www.cnblogs.com/bobositlife/p/aspnet-mvc-csharp-quartz-net-timer-task-scheduler.html 在之前的文章&l ...

  10. oracle 12c 加入系统服务

    1修改oratab文件 vi /etc/oratab #把后台一行的N改为Y db01:/usr/oracle/app/product/11.2.0/dbhome_1:Y 2如果安装时.bash_pr ...