生活在云时代的程序员真是很幸福,各种各样丰富的开发工具可选。既然生活在云时代,那么,程序员就应该用云思维来进行开发,本系列文章就是基于Docker开发学习和总结笔记。
系列文章将会按照docker使用的进度作为主线,分为:
docker基础知识 -> Docker构建个人开发环境 -> Docker使用进阶 -> Docker集群
由简单到复杂。
Anoxia | 程序员,PHP,Shell,UI设计,Linux
————|————————————-
weibo | @鸡蛋鸭蛋狗蛋鹅蛋
blog | http://anoxia.coloroud.com
email | [email protected]
转载请注明出处:http://anoxia.coloroud.com
好了,说实话,前面那一篇文章基本是照别人的内容抄的,妈的,感觉博文写起来真是费劲,半天都骂不出半个字,好吧,我承认我这个人时越来越粗鲁了,靠。
由于LXC本身不支持Mac内科,因此需要使用一个TinyCoreLinux作为docker与Mac的中间层。Docker社区对于Mac OS用户提供一个boot2docker工具来快速安装整个docker环境,其结构如下:
Mac OS安装Docker的方式有三种:
用pkg安装
使用brew安装
手动安装
boot2docker项目地址(github:boot2docker
boot2docker到我写这篇博文时最新版本是1.4.1,pkg的包129M,如果你的网速慢,那估计要折腾折腾。好在国内有第三方docker仓库商提供整个安装包的下载。这里需要注意一点,第三方的不是最新的版本,知识1.3.2,不过够用了。
boot2docer(OSX)包下载地址:boot2docker/osx-installer
Daocloud下载地址(国内):boot2docker/osx-installer
安装过程就不多说了,一路狂点下一步吧。
安装完成后,Launhpad会多出两个图标,一个是docker,另一个是virtual box,同时也会在你的主目录生成一些文件:
在你的用户主目录下~/.boot2docker下是创建虚拟机所需要的文件,boot2docker.iso是虚拟机映像,里面就是我们上面说的TinyCoryLinux系统,由CD-ROM引导。boot2docker-vm.vmdk文件则是虚拟机磁盘,所有的持久化数据都存在这里,包括docker创建的lxc容器等文件。
使用brew安装,需要你准备两个东西:Virtualbox和brew,下面给出两个软件主页及下载地址。
Virtualbox:Virtualbox,下载:OSX-Virtuaboxl
brew:brew,使用下面指令在终端中执行即可安装(注意,安装brew需要你已经装好了x-command套件):
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
安装完brew和VirtualBox后,就可以使用下面指令安装docker了
brew install boot2docker
使用下面指令进行手动安装docker:
安装boot2docekr
curl https://raw.github.com/steeve/boot2docker/master/boot2docker > boot2docker; chmod +x boot2docker; sudo mv boot2docker /usr/local/bin
安装docker
curl -o docker http://get.docker.io/builds/Darwin/x86_64/docker-latest; chmod +x docker; sudo cp docker /usr/local/bin
在Mac下,docker被分为客户端docker-client和服务端docker-daemon两部分,如果是在linux(比如ubuntu),实际上则是同一个可执行文件同时充当客户端和服务端。docker-daemon可以监听unix scoket,也可以在tcp socket(默认端口为2376),docker-client会通过一个叫DOCKER_HOST的环境变量读取服务地址和端口,因此你应该在你的bash_profile文件里面添加这么几行行:
export DOCKER_CERT_PATH=/Users/anoxia/.boot2docker/certs/boot2docker-vm
export DOCKER_TLS_VERIFY=1
export DOCKER_HOST=tcp://192.168.59.103:2376
boot2docker初始化:
boot2docker init
完成后就能在 VirtualBox 中看到一个叫做 boot2docker-vm 的虚拟机,以后只需用 boot2docker 命令来控制这个虚拟机的行为,启动,停止等。
boot2docker启动
boot2docker start
启动,boot2docker-vm 虚拟机,我们能在 VirtualBox 中看到该虚拟机变成 Running 状态
Ubuntu14.04版本系统中已经自带了Docker包,可以直接安装,使用如下命令:
sudo apt-get update
sudo apt-get install -y docker.io
sudo ln -sf /usr/bin/docker.io /usr/local/bin/docker
sudo sed -i '$acomplete -F _docker docker' /etc/bash_completion.d/docker.io
使用操作系统自带包安装docker,安装的版本比较旧,版本是0.9.1,要想安装更高的版本,可以通过docker源安装最新版本。
要安装最新的 Docker 版本,首先需要安装 apt-transport-https 支持,之后通过添加源来安装。
sudo apt-get install apt-transport-https
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 36A1D7869245C8950F966E92D8576A8BA88D21E9
sudo bash -c "echo deb https://get.docker.io/ubuntu docker main > /etc/apt/sources.list.d/docker.list"
sudo apt-get update
sudo apt-get install lxc-docker
如果你使用的ubuntu版本较低,需要先更新内核:
sudo apt-get update
sudo apt-get install linux-image-generic-lts-raring linux-headers-generic-lts-raring
sudo reboot
然后重复上面的步骤即可。
安装之后启动Docker服务
sudo service docker start
Docker支持CentOS以后的版本。
CentOS6
对于CentOS6,可以使用EPEL库安装Docker,命令如下:
sudo yum install http://mirrors.yun-idc.com/epel/6/i386/epel-release-6-8.noarch.rpm
sudo yum install docker-io
CentOS7
CentOS7系统CentOS-Extras库中已带Docker,可以直接安装:
sudo yum install docker
安装之后启动docker服务,并让它随系统启动自动加载。
sudo service docker start
sudo chkconfig docker on