【Docker】Docker学习笔记:安装部署

本文详细介绍了如何在Ubuntu、CentOS及OSX上安装Docker,并提供了针对不同操作系统的具体步骤,包括内核升级、软件源配置及依赖项安装等内容。

Docker 是实现轻量级的操作系统虚拟化解决方案。 Docker目前已经支持非常多的Linux平台,Ubuntu、Red Hat企业版Linux、Debian、CentOs、Fedora、Oracle Linux等。如果使用虚拟环境,甚至可以在OS X 和 windows中运行。

安装的条件

  • Docker目前只能在64位CPU架构的计算机上运行(目前只能是x86_64 、amd64)。
  • Linux 3.8 或 更高版本的内核。3.8之前的版本也能运行,但效果不同,遇到问题时大家都建议你升级。
  • 内核必须支持一些适合的存储驱动(strage drive),例如:
  • Device Manage
  • AUFS
  • vfs
  • btrfs
  • 默认存储驱动通常是Device
  • 内核必须支持并开启cgroup和命名空间(banespace)功能

    Ubuntu

    通过系统自带包安装
    Ubuntu 14.04 版本系统中已经自带了 Docker 包,可以直接安装。
  • 更新最新内核,如果是比较老的内核,在运行期间可能会出现一些功能不支持。

    sudo apt-get update
    sudo apt-get install linux-image-generic-lts-raring linux-headers-generic-lts-raring

  • 安装完成,重启

    sudo reboot

  • 直接安装本地docker.io包

    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源安装最新版本

使用系统自带的docker安装包安装的版本比较低,为0.9.1,需要安装最新的版本则,则可通过docker源安装。

  • 更新最新内核。

    sudo apt-get update
    sudo apt-get install linux-image-generic-lts-raring linux-headers-generic-lts-raring

  • 安装完成,重启

    sudo reboot

  • 首先要安装apt-transport-https支持

    sudo apt-get install apt-transport-https

  • 添加docker源安装

    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

CentOS

因为selinux和LXC有冲突,所以需要禁用

/etc/selinux/config
SELINUX=disabled

更新内核

docker必须得内核3.8以上才能运行,所有在安装之前先检查内核版本是否够高。如果不够高则先进行内核升级。

  1. centos7
    centos7更新内核比较简单,执行yum update kernel -y即可。
  1. centos6.x
    导入key
    rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
    安装elrepo的yum源
    rpm -ivh http://www.elrepo.org/elrepo-release-6-5.el6.elrepo.noarch.rpm
    安装内核
    yum --enablerepo=elrepo-kernel -y install kernel-lt kernel-lt-devel
    修改grub.conf默认选择默认启动内核
    sed -i "s/default=1/default=0/g" /etc/grub.conf
    系统中有两个grub.conf。/boot/grub下的也修改下
    sed -i "s/default=1/default=0/g" /boot/grub/grub.conf
    重启
    reboot
自带包安装

CentnOS7中已带Docker,直接安装即可,但版本不一定最新,建议使用EPEL安装

sudo yum install docker

使用EPEL库安装Docker

sudo yum install docker-io

OSX

由于Docker使用了Linux-specific内核特定,所以在Mac OS X无法直接本地运行。但是可以通过安装Boot2Docker application实现。Boot2Docker包含了Virtual Box VM,Docker和Boot2Docker管理工具。

在Mac上运行Docker需要一台虚拟机的帮助,Docker Client运行在本地,Docker Daemon运行在虚拟机中,Boot2Docker作为一个管理工具在本地运行。

安装brew

Boot2Docker可以通过brew来安装比较方便,自动解决依赖。安装命令如下:

curl -LsSf http://github.com/mxcl/homebrew/tarball/master | sudo tar xvz -C/usr/local --strip 1
安装Boot2Docker
通过brew安装
brew install boot2docker

安装过程中需要安装go语言包,需要FQ。

直接安装

git下载到最新版boot2docker.pkg进行安装即可。

初始化docker
$ boot2docker init

看到如图的结果说明更新成功
178278-20151107211518399-869809349.png

$ boot2docker up

看到如图的结果说明启动成功,按照提示设置环境变量
178278-20151107211613977-1104275119.png

$(boot2docker shellinit)
178278-20151107211632461-1827732248.png

到这里如果没有报错,说明安装成功,可以愉快的玩耍了。

网络问题解决

由于mac下是通过boot2docker运行,所以不能直接修改/etc/default/docker中的DOCKER_OPTS来进行Docker Hub Mirror机制,在mac下需要通过以下方式来解决。

boot2docker ssh sudo su echo "EXTRA_ARGS="--registry-mirror=http://f2d6cb40.m.daocloud.io\"" >> /var/lib/boot2docker/profile && exit exit boot2docker restart

遇到的问题

开源产品一大特点就是就是坑多,在ubuntu和osx上基本上没有遇到坑,在centos上面遇到的坑比较多。
首先在启动时报一个错Usage of loopback devices is strongly discouraged for production use. Either use--storage-opt dm.thinpooldevor use--storage-opt dm.no_warn_on_loop_devices=trueto suppress this warning. 网友提示升级到最新版本即可,于是采用wget https://get.docker.io/builds/Linux/x86_64/docker-latest -O docker && mv -f docker /usr/bin/docker && chmod +x /usr/bin/docker来升级

启动Docker

sudo service docker start

启动成功以后,可以通过info命令查看docker信息

178278-20151107210851742-488742372.png

参考

Docker中文指南
Docker从入门到实践
Docker入门实践
docker读书笔记

以上内容通过参考网上相关博客和自己实践整理,若有问题,欢迎指正、讨论!

转载于:https://www.cnblogs.com/zhiqli/p/4945872.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值