一、Docker之旅
刚刚接触到docker的同事可能会一头雾水,docker到底是一个什么东西,先看看官方的定义。
Docker是一个开源的引擎,可以轻松的为任何应用创建一个轻量级的、可移植的、自给自足的容器。开发者在笔记本上编译测试通过的容器可以批量地在生产环境中部署,包括VMs(虚拟机)、bare metal、OpenStack 集群和其他的基础应用平台。
根据官方的定义,我理解就是Docker最终目的就是建立一个轻量化的容器,并且容器是可以定制,通过Docker来启动定制容器。
1、安装
- centor-6中安装docker-io之前需要先卸载docker包
yum –y remove docker - 安装Fedora EPLE
yum install epel-release-6-8.noarch.rpm或yum -y install http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm - yum安装
yum –y install docker 升级docker-1.9.1 目前大部分使用Centos6.5本,我使用Centos6.8,通过yum y install docker安装后为 1.7.1,在使用daocloud加速器时要求使用最低1.8的版本。 升级docker之前,首先要升级Linux内核,升级内核详见http://www.cnblogs.com/ywqbj/p/5756746.html。
- 查看docker的安装位置
[root@IDC-D-1699 docker]# whereis docker
docker: /usr/bin/docker /etc/docker /usr/local/bin/docker /usr/libexec/docker /usr/share/man/man1/docker.1.gz
- 内核升级成功后下载1.9.1的版本,
curl -sSL -O https://get.docker.com/builds/Linux/x86_64/docker-1.9.1。 - 替换原有的docker
cp docker-1.9.1 /usr/local/bin/docker - 启动并查看docker版本
[root@IDC-D-1699 docker]# service docker start
Starting docker: [确定]
[root@IDC-D-1699 docker]# docker version
Client:
Version: 1.9.1
API version: 1.21
Go version: go1.4.3
Git commit: a34a1d5
Built: Fri Nov 20 17:56:04 UTC 2015
OS/Arch: linux/amd64 Server:
Version: 1.9.1
API version: 1.21
Go version: go1.4.3
Git commit: a34a1d5
Built: Fri Nov 20 17:56:04 UTC 2015
OS/Arch: linux/amd64 使用加速器
curl -sSL https://get.daocloud.io/daotools/set_mirror.sh | sh -s http://e39eb134.m.daocloud.io[root@IDC-D-1699 docker]# curl -sSL https://get.daocloud.io/daotools/set_mirror.sh | sh -s http://e39eb134.m.daocloud.io
Success.
You need to restart docker to take effect : sudo service docker restart
2、Docker命令
要想熟练的使用docker掌握好命令是第一前提。
| 分类 | 命令 |
| 环境信息 | info,version |
| 容器生命周期管理 | create,exec,kill,pause,restart,rm,run,start,stop,unpause |
| 镜像仓库命令 | login,logout,pull,push,search |
| 镜像管理 | build,image,import,load,rmi,save,tag,commit |
| 容器运维操作 | attach,export,inspect,port,ps,rename,stats,top,wait,cp,diff |
| 系统日志信息 | events,history,logs |
2.1 环境信息
docker info 用于检测Docker是否正确安装,如果正确安装会输出Docker环境信息。
[root@IDC-D-1699 ~]# docker info
Containers: 1
Images: 22
Storage Driver: devicemapper
Pool Name: docker-104:3-1313361-pool
Pool Blocksize: 65.54 kB
Backing Filesystem: extfs
Data file: /dev/loop0
Metadata file: /dev/loop1
Data Space Used: 953 MB
Data Space Total: 107.4 GB
Data Space Available: 106.4 GB
Metadata Space Used: 1.884 MB
Metadata Space Total: 2.147 GB
Metadata Space Available: 2.146 GB
Udev Sync Supported: true
Deferred Removal Enabled: false
Data loop file: /var/lib/docker/devicemapper/devicemapper/data
Metadata loop file: /var/lib/docker/devicemapper/devicemapper/metadata
Library Version: 1.02.117-RHEL6 (2016-04-01)
Execution Driver: native-0.2
Logging Driver: json-file
Kernel Version: 2.6.32-642.el6.x86_64
Operating System: <unknown>
CPUs: 4
Total Memory: 3.738 GiB
Name: IDC-D-1699
ID: RSDT:BELZ:DD36:AFSX:FDO7:ESFG:JYQA:ID5P:ENAK:YQGQ:5RMC:OBXN
Docker info 和 Docker version并没有额外的操作参数。
2.2 docker run
docker run 是核心命令之一,在使用docker时执行最多的命令,具体了解别忘了 docker run --help。
2.2.1 命令格式
docker run [options] image [commond] [arg…]
-d 后台模式运行,如果没有-d这个参数容器进入前台模式
-i 使用交互模式,始终保持输入流开放
-t 分配一个伪终端,一般两个参数合起来使用-it,即可在容器中利用打开的伪终端进行交互操作。
--name 指定容器启动的名称。
-c 选项给运行在容器中所有进程分配CPU的share值
3、搜索可用镜像
目前国内比较好的daocloud.com镜像站,功能还是比较强大,支持部署应用。
一、Docker之旅的更多相关文章
- Docker学习总结(6)——通过 Docker 化一个博客网站来开启我们的 Docker 之旅
通过 Docker 化一个博客网站来开启我们的 Docker 之旅 这篇文章包含 Docker 的基本概念,以及如何通过创建一个定制的 Dockerfile 来 Docker 化Dockerize一个 ...
- OneSQL的docker之旅
百度盘下载地址: http://pan.baidu.com/s/1v9GWA OneSQL Docker使用方法: 1. 解压 tar zxvf OneSql-Docker-5.6.2 ...
- PHP 开发者的 Docker 之旅
用 PHP 作为我们「Docker 开发大礼包」开篇是带着一些朝圣的心情的.这是一门堪称「古老」的语言,这也是一门争议最多的语言,这更是一门不断涅槃的语言.「PHP 是最好的语言」这个流传已久的梗,或 ...
- Docker(一)Linux开启你的Docker之旅
前言 Docker容器最早受到RHEL完善的支持是从最近的CentOS 7.0开始的,官方说明是只能运行于64位架构平台, 内核版本为2.6.32-431及以上(即 >= CentOS 6.5, ...
- 简单四步開始树莓派上的Docker之旅
大概这篇博文发表之后,应该算是我个人的第一篇翻译作品了,翻译的可能不是非常到位,望各位看官大刀砍过来. 原文链接:http://resin.io/blog/docker-on-raspberry-pi ...
- 用浏览器快速开启Docker的体验之旅
互联网科技发展创造了很多奇迹,比如我今天要提到的 docker 技术就是其一.我很早就关注它(在2015年写过这方面的博客),那会儿还只是一个开源项目,现在已经是一个行业事实标准了,它推动了云原生的变 ...
- ASP.NET Core开发-Docker部署运行
ASP.NET Core开发Docker部署,.NET Core支持Docker 部署运行.我们将ASP.NET Core 部署在Docker 上运行. 大家可能都见识过Docker ,今天我们就详细 ...
- Docker简明教程(转)
Docker自从诞生以来就一直备受追捧,学习Docker是一件很炫酷.很有意思的事情.我希望通过这篇文章能够让大家快速地入门Docker,并有一些学习成果来激发自己的学习兴趣.我也只是一个在Docke ...
- 报名|「OneAPM x DaoCloud」技术公开课:Docker性能监控!
如今,越来越多的公司开始 Docker 了,「三分之二的公司在尝试了 Docker 后最终使用了它」,也就是说 Docker 的转化率达到了 67%,同时转化时长也控制在 60 天内. 既然 Dock ...
随机推荐
- 用Webshell直接杀入内网
有时候要代理进内网,但是服务器没有外网端口,也没法执行命令反弹lcx什么的,也没有提权什么什么的,只有一个webshell,这个时候就比较蛋疼了. 鄙人不才,写了一个比较山寨的php+nginx反向代 ...
- 【转】C#(ASP.Net)获取当前路径的方法集合
转自:http://www.gaobo.info/read.php/660.htm //获取当前进程的完整路径,包含文件名(进程名). string str = this.GetType().Asse ...
- NOJ 1074 Hey Judge(DFS回溯)
Problem 1074: Hey Judge Time Limits: 1000 MS Memory Limits: 65536 KB 64-bit interger IO format: ...
- ThinkPHP 3.2.3 简单后台模块开发(一)常用配置
一.项目分组 下载解压 ThinkPHP 3.2.3,在默认的应用 Application(./Application) 中,包含一个默认的模块 Home(./Application/Home). 需 ...
- Ffmpeg
Ffmpeg <?php $movefile = "./4.mp4"; $mov = new ffmpeg_movie($movefile); printf("fi ...
- 接口测试从未如此简单 - Postman (Chrome插件)
接口测试从未如此简单 - Postman (Chrome插件) 一个非常有力的Http Client工具用来测试Web服务的, 我这里来介绍如何用它测试restful web service 注:转载 ...
- ASCII字符对照表 不时之需
ASCII可显示字符 二进制 十进制 十六进制 图形 0010 0000 32 20 (空格)(␠) 0010 0001 33 21 ! 0010 0010 34 22 " 0010 001 ...
- 正则基础之——捕获组(capture group)
1 概述 1.1 什么是捕获组 捕获组就是把正则表达式中子表达式匹配的内容,保存到内存中以数字编号或显式命名的组里,方便后面引用.当然,这种引用既可以是在正则表达式内部,也可以是 ...
- The best career advice I’ve received
I recently had an interesting discussion with a colleague. We were recounting our job histories and ...
- 【Android测试】【第十二节】Uiautomator——API详解
◆版权声明:本文出自carter_dream的博客,转载必须注明出处. 转载请注明出处:http://www.cnblogs.com/by-dream/p/4921701.html 简单的例子 以一个 ...