【Docker】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

  • centos6.X

    sudo yum install http://mirrors.yun-idc.com/epel/6/i386/epel-release-6-8.noarch.rpm

  • centos7.X

    sudo yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/491647.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

定了!5G商用牌照近期发放​​​​,透露两大信息(附:2019年5G行业关键材料及市场研究报告)...

来源:世界科技创新论坛据工信微报和新华社消息:日前,全球5G正在进入商用部署的关键期。坚持自主创新与开放合作相结合,我国5G产业已建立竞争优势。5G标准是全球产业界共同参与制定的统一国际标准,我国声明的标准必要专…

OpenCV与图像处理学习二——图像直方图与色彩空间

OpenCV与图像处理学习二——图像直方图与色彩空间2.4 图像直方图(Image Histogram)2.4.1 直方图的绘制2.4.2 三通道直方图绘制2.5 颜色空间2.5.1 RGB颜色空间2.5.2 HSV颜色空间(Hue、Saturation、Value)2.5.3 HSI2.5.4 CMYK&#…

JavaScript基础5——关于ECMAscript的函数

ECMAScript的函数概述(一般定义到<head>标签之间)(1)定义函数&#xff0c;JavaScript一般有三种定义函数方法&#xff1a; *第一种是使用function语句定义函数&#xff08;静态方法&#xff09; 1 function 函数名(var1,var2,...,varX) 2 { 3 4 代码&…

中国科学家首次观察到量子世界的宇称时间对称

来源&#xff1a;中国新闻网 中国科学家调控量子跳双人舞 首次观察到量子世界的宇称时间对称中新社合肥6月3日电 (吴兰 范琼)记者3日从中国科学技术大学获悉&#xff0c;该校杜江峰院士的研究团队通过调控量子跳出双人舞&#xff0c;在国际上首次观察到量子世界的宇称时间对称。…

OpenCV与图像处理学习三——线段、矩形、圆、椭圆、多边形的绘制以及文字的添加

OpenCV与图像处理学习三——线段、矩形、圆、椭圆、多边形的绘制以及文字的添加一、OpenCV中的绘图函数1.1 线段绘制1.2 矩形绘制1.3 圆绘制1.4 椭圆的绘制1.5 多边形绘制1.6 添加文字上两次笔记主要知识点回顾&#xff1a; 数字图像基本概念图像的读取、显示与保存图像直方图…

AI英雄 | 论人工智能与自由意志,请看尤瓦尔与李飞飞的这场“激辩”

来源&#xff1a;Towards Data Science尤瓦尔赫拉利和李飞飞在斯坦福大学展开了一场别开生面的对话&#xff0c;他们所提出的问题已经远远超出了我们可以解答的范围。《连线》杂志主编尼古拉斯•汤普森在座无虚席的纪念礼堂主持了这场90分钟的谈话。赫拉利&#xff08;Harari&a…

OpenCV与图像处理学习四——图像几何变换:平移、缩放、旋转、仿射变换与透视变换

OpenCV与图像处理学习四——图像几何变换&#xff1a;平移、缩放、旋转、仿射变换与透视变换二、图像的几何变换2.1 图像平移2.2 图像缩放&#xff08;上采样与下采样&#xff09;2.3 图像旋转2.4 仿射变换2.5 透视变化2.6 几何变化小结续上次的笔记&#xff1a;OpenCV与图像处…

课后作业和动手动脑

一&#xff0c;运行TestInherits.java 通过super调用基类构造方法&#xff0c;必是子类构造方法中的第一个语句。 二.为什么子类的构造方法在运行之前&#xff0c;必须调用父类的构造方法&#xff1f;能不能反过来&#xff1f;为什么不能反过来&#xff1f; 构造函数的主要作用…

OpenCV与图像处理学习五——图像滤波与增强:线性、非线性滤波、直方图均衡化与Gamma变换

OpenCV与图像处理学习五——图像滤波与增强&#xff1a;线性、非线性滤波、直方图均衡化与Gamma变换三、图像滤波与增强3.1 线性滤波3.1.1 方框滤波3.1.2 均值滤波3.1.3 高斯滤波3.1.4 一般卷积滤波3.2 非线性滤波3.2.1 中值滤波3.2.2 双边滤波3.3 图像直方图均衡化3.3.1 单通道…

张钹院士:人工智能技术已进入第三代

来源&#xff1a;经济观察报近日&#xff0c;中科院院士、清华大学人工智能研究院院长张钹教授接受记者采访时认为&#xff0c;目前基于深度学习的人工智能在技术上已经触及天花板。从长远来看&#xff0c;必须得走人类智能这条路&#xff0c;最终要发展人机协同&#xff0c;人…

软件工程作业

典型用户1 名字老陈性别&#xff0c;年龄男&#xff0c;40岁职业教师收入两万/年知识层次和能力本科&#xff0c;熟练计算机操作生活、工作情况教书&#xff0c;辅导孩子完成作业动机&#xff0c;目的&#xff0c;困难希望节省辅导孩子的时间&#xff0c;用于自己的业务工作用户…

numpy.ndarray索引/切片方式

注意&#xff1a;获得多维数组的前三个子数组不能用array[0,1,2]&#xff0c;应该用 array[0:3]&#xff0c;如下例子&#xff1a; a np.random.random([85, 7794, 64]) b a[0:3] print(np.shape(b)) # (3, 7794, 64)

OpenCV与图像处理学习六——图像形态学操作:腐蚀、膨胀、开、闭运算、形态学梯度、顶帽和黑帽

OpenCV与图像处理学习六——图像形态学操作&#xff1a;腐蚀、膨胀、开、闭运算、形态学梯度、顶帽和黑帽四、图像形态学操作4.1 腐蚀和膨胀4.1.1 图像腐蚀4.1.2 图像膨胀4.2 开运算与闭运算4.2.1 开运算4.2.2 闭运算4.3 形态学梯度&#xff08;Gradient&#xff09;4.4顶帽和黑…

解密硅谷大骗局

来源&#xff1a;硅谷封面企鹅号、腾讯科技在许多为人称道的科技创业故事中&#xff0c;总不乏硅谷的名字。从英特尔、IBM到微软、苹果&#xff0c;从雅虎、谷歌到Twitter、Facebook&#xff0c;这里诞生了很多知名科技企业。对于全球的创业者来说&#xff0c;硅谷就是梦想中的…

OpenCV与图像处理学习七——传统图像分割之阈值法(固定阈值、自适应阈值、大津阈值)

OpenCV与图像处理学习七——传统图像分割之阈值法&#xff08;固定阈值、自适应阈值、大津阈值&#xff09;一、固定阈值图像分割1.1 直方图双峰法1.2 OpenCV中的固定阈值分割二、自动阈值图像分割2.1 自适应阈值法2.2 迭代法阈值分割2.3 Otsu大津阈值法前面的笔记介绍了一些Op…

Foxmail 绑定企业邮箱

转载于:https://www.cnblogs.com/wu628/p/4955017.html

边缘计算将吞掉云计算!

来源&#xff1a;CSDN以下为译文&#xff1a;边缘计算已成为物联网的重要趋势。高德纳咨询公司认为边缘计算是2019年的一项技术趋势。各个物联网公司发现在将数据发送到云之前&#xff0c;通过边缘计算处理数据有很大的好处。最近Micron/Forrester的调查证实了这一趋势&#xf…

OpenCV与图像处理学习八——图像边缘提取(Canny检测代码)

OpenCV与图像处理学习八——图像边缘提取&#xff08;Canny检测代码&#xff09;一、图像梯度1.1 梯度1.2 图像梯度二、梯度图与梯度算子2.1模板卷积2.2 梯度图2.3 梯度算子2.3.1 Roberts交叉算子2.3.2 Prewitt算子2.3.3 Sobel算子三、Canny边缘检测算法&#xff08;代码实现&a…

面向人工智能的计算机体系结构

来源&#xff1a;计算机研究与发展前 言近几年来人工智能技术的飞速发展使得其应用迅猛扩大&#xff0c;而传统的计算机体系结构对于面向人工智能的应用在处理速度、能耗、使用的方便性等方面有着诸多不足。随着人工智能应用的发展&#xff0c;面向人工智能的体系结构成为体系结…

OpenCV与图像处理学习九——连通区域分析算法(含代码)

OpenCV与图像处理学习九——连通区域分析算法&#xff08;含代码&#xff09;一、连通区域概要二、Two-Pass算法三、代码实现一、连通区域概要 连通区域&#xff08;Connected Component&#xff09;一般是指图像中具有相同像素值且位置相邻的前景像素点组成的图像区域&#x…