Docker从入门到实战(三)

一:安装Docker

1. linux系统脚本安装

Docker基于linux容器技术,面向服务器端,Docker只能安装运行在64位计算机上(社区有对32位的支持),linux内核版本必须大于3.10,内核小于3.10的系统会因为缺少Docker容器运行所需的功能而有错误。

一键安装脚本

(1)安装稳定版本
curl -sSL https://get.docker.com/ | sh或者wget -qO- https://get.docker.com/ | sh
(2)安装测试版本
curl -fsSL https://test.docker.com/ | sh或者wget -qO- https://test.docker.com/ | sh
(3)安装实验版本
curl -fsSL https://experimental.docker.com/ | sh或者wget -qO- https://experimental.docker.com/ | sh
如果安装时出现如下没有aufs的提示,用户可以安装内核扩展系列(Ubuntu系列)
modprobe:FATAL: Module aufs not found in directory /lib/modules/4.4.0-2-**-amd64
Waring:current kernel is not supported by the linux-image-extra-virtual package.We have no AUFS support. Consider installing the packages linux-image-virtual kernel and linux-image-extra-virtual for AUFS support.

  • sleep 10

sudo apt-get install linux-image-extra-‘uname -r’
或者自己下载aufs编译安装,再或者再等待10秒,安装脚本会使用替代方案安装docker
sudo curl -sSL https://get.docker.com/ | sh

1.1Debian发行版

(1)查看内核版本
uname -r
如果内核版本达不到要求,需要升级内核。目前Debian一般都不用升级内核
sudo apt-get update
sudo apt-get dist-upgrade
sudo reboot
(2)更新APT源
打开一个终端,安装apt-transport-https包,使得APT支持HTTPS协议的源
sudo apt-get update && sudo apt-get install apt-transport-https ca-certificates
添加Docker源的gpg密钥
sudo apt-key adv –keyserver hkp://p80.pool.sks-keyservers.net:80 –recv-keys 58118E89F3A912897C070ADBF76221572C52609D
(3)添加Docker的官方APT软件源
先查看当前操作系统的代号lsb_release -c
sudo vim /etc/apt/sources.list.d/docker.list
Debian Wheezy如下
deb https://apt.dockerproject.org/repo debian-wheezy main
Debian Jessie如下
deb https://apt.dockerproject.org/repo debian-jessie main
Debian Stretch/Sid如下
deb https://apt.dockerproject.org/repo debian-stretch main
注意修改操作系统对应的代号
添加成功后,更新APT软件包缓存
sudo apt-get update
校验软件包缓存结果
apt-cache policy docker-engine
(4) 安装Docker
如果用户以前装过Docker,那么需要完全卸载Docker再安装
apt-get purge "lxc-docker"
apt-get purge "docker.io
"
一切没问题后,执行安装
sudo apt-get instal docker-engine
(5)启动Docker
sudo service docker start
(6)确保Docker运行正常
sudo docker run –-rm hello-world
返回Hello World表示运行正常
(7)为非root用户授权
如果没有Docker用户组就建立一个Docker用户组(默认安装后自动创建)
sudo groupadd docker
增加当前用户到Docker组,需要注销来生效
sudo gpasswd -a ${USER} docker
重启Docker 服务
sudo service docker restart
这样执行Docker命令就不必使用sudo申请权限了

1.2Ubuntu发行版

(1)查看内核版本
uname -r
如果内核版本达不到要求,需要升级内核。
sudo apt-get update
sudo apt-get install -y linux-images-generic-lts-raring linux-headers-generic-lts-raring
sudo reboot
(2)更新APT源
sudo apt-get update && sudo apt-get install apt-transport-https ca-certificates
添加Docker源的gpg密钥
sudo apt-key adv –keyserver hkp://p80.pool.sks-keyservers.net:80 –recv-keys 58118E89F3A912897C070ADBF76221572C52609D
(3)添加Docker的官方APT软件源
先查看当前操作系统的代号lsb_release -c
sudo vim /etc/apt/sources.list.d/docker.list
Ubuntu 14.04(LTS)如下
deb https://apt.dockerproject.org/repo ubuntu-trusty main
Ubuntu 15.10如下
deb https://apt.dockerproject.org/repo ubuntu-wily main
Ubuntu 16.04(LTS)如下
deb https://apt.dockerproject.org/repo ubuntu-xenial main
注意修改操作系统对应的代号
添加成功后,更新APT软件包缓存
sudo apt-get update
校验软件包缓存结果
apt-cache policy docker-engine
(4)安装Docker
安装Docker之前,如果用户使用的是Ubuntu 12.04可以先升级系统
sudo apt-get install linux-image-generic-lts-trusry
sudo reboot
如果用户以前装过Docker,那么需要完全卸载Docker再安装
apt-get purge "lxc-docker"
apt-get purge "docker.io
"
一切没问题后,执行安装
sudo apt-get update
sudo apt-get instal docker-engine
(5)启动Docker
sudo service docker start
(6)确保Docker运行正常
sudo docker run –-rm hello-world
返回Hello World表示运行正常
(7)为非root用户授权
如果没有Docker用户组就建立一个Docker用户组(默认安装后自动创建)
sudo groupadd docker
增加当前用户到Docker组,需要注销来生效
sudo gpasswd -a ${USER} docker
重启Docker 服务
sudo service docker restart
这样执行Docker命令就不必使用sudo申请权限了

1.3CentOS/Fedora发行版

Docker(重新编译自RHEL7)已收录在CentOS-Extras软件库内。用户只需要执行以下安装命令即可。
sudo yum -y install docker
如果用户想使用一个比较新版本的Docker,则有两个选择
(1)使用来自Fedora的组件
sudo tee /etc/yum.repos.d/docker.repo << -‘EOF’
[virt7-docker-fedora-candidate]
name=virt7-docker-fedora-candidate
baseurl=http://cbs.centos.org/repos/virt7-docker-fedora-candidate/x86_64/os/
enabled=1
gpgcheck=0
EOF
(2)使用来自RHEL的组件
sudo tee /etc/yum.repos.d/docker.repo << -‘EOF’
[virt7-docker-el-candidate]
name=birt7-docker-el-candidate
baseurl=http://cbs.centos.org/repos/virt7-docker-el-candidate/x86_64/os/
enabled=1
gpgcheck=0
EOF
注意:在系统上同时启用这两个软件库会混淆来在不同源头的组件而导致无法预知的后果。同时或许需要停用CentOS-Extras,以确保安装的组件是来自虚拟化SIG软件库。
sudo yum -y install docker –-disablerepo=extras
安装Docker后,你必须引导服务才能应用它
sudo systemctl start docker
若要开机引导Docker服务
sudo systemctl enable docker或者sudo chkconfig docker on
在CentOS 6.5上安装Docker需要采用EPEL软件库。启用EPEL后,才能继续以下的安装程序
要在CentOS 6系列上安装Docker,可利用以下指令安装docker-io组件
sudo yum -y install docker-io
如果不能直接安装docker-io,可利用EPEL软件库
rpm -Uvh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
yum -y update
安装Docker后,必须引导该服务才能应用它
sudo service docker start
开机时引导Docker服务
sudo chkconfig docker on

2.Linux、Mac、Windows二进制安装

2.1获取Linux二进制包

通过下面的链接来下载最新版本的Linux二进制包
https://get.docker.com/builds/Linux/i386/docker-latest.tgz
https://get.docker.com/builds/Linux/x86_64/docker-latest.tgz
使用下面的链接模式来下载指定版本的Linux二进制包
https://get.docker.com/builds/Linux/i386/docker-<version>.tgz
https://get.docker.com/builds/Linux/x86_64/docker-<version>.tgz
例如:
https://get.docker.com/builds/Linux/i386/docker-1.15.0.tgz
https://get.docker.com/builds/Linux/x86_64/docker-1.15.0.tgz
解压如下
tar -xzvf docker-latest.tgz
安装运行
chmod a+x docker/
mv docker/
 /usr/bin/
sudo docker &

2.2获取Mac OS X二进制包

通过下面的链接来下载最新版本的Mac OS X二进制包
https://get.docker.com/builds/Darwin/x86_64/docker-latest.tgz
使用下面的链接模式来下载指定版本的Mac OS X二进制包
https://get.docker.com/builds/Darwin /x86_64/docker-<version>.tgz
例如:
https://get.docker.com/builds/Darwin /x86_64/docker-1.15.0.tgz

2.3获取Windows二进制包

通过下面的链接来下载最新版本的Windows二进制包
https://get.docker.com/builds/Windows /i386/docker-latest.zip 
https://get.docker.com/builds/Windows/x86_64/docker-latest.zip 
使用下面的链接模式来下载指定版本的Windows二进制包
https://get.docker.com/builds/Windows/i386/docker-<version>.zip 
https://get.docker.com/builds/Windows/x86_64/docker-<version>.zip 
例如:
https://get.docker.com/builds/Windows/i386/docker-1.15.0.zip 
https://get.docker.com/builds/Windows/x86_64/docker-1.15.0.zip

文中所有内容皆为手动敲出来的,难免有疏忽之处,欢迎评论指正!
后续文档Docker从入门到实战(四)链接 http://blog.51cto.com/12943999/2073654

Docker从入门到实战(三)的更多相关文章

  1. Docker从入门到实战(二)

    Docker从入门到实战(二) 一:什么是docker Docker是一个开源的应用容器引擎,开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到主流的Linux.MacOS.Windo ...

  2. Docker从入门到实战(一)

    Docker从入门到实战(一) 一:容器技术与Docker概念 1 什么是容器 容器技术并不是一个全新的概念,它又称为容器虚拟化.虚拟化技术目前主要有硬件虚拟化.半虚拟化.操作系统虚拟化等.1.1关于 ...

  3. Docker技术入门与实战第2版-高清文字版

      Docker技术入门与实战第2版-高清文字版 下载地址https://pan.baidu.com/s/1bAoRQQlvBa-PXy5lgIlxUg 扫码下面二维码关注公众号回复100011 获取 ...

  4. Docker技术入门与实战

      Docker技术入门与实战 下载地址https://pan.baidu.com/s/1bAoRQQlvBa-PXy5lgIlxUg 扫码下面二维码关注公众号回复100011 获取分享码 本书目录结 ...

  5. 赞一个 kindle电子书有最新的计算机图书可买了【Docker技术入门与实战】

    最近对docker这个比较感兴趣,找一个比较完整的书籍看看,在z.cn上找到了电子书,jd dangdang看来要加油啊 Docker技术入门与实战 [Kindle电子书] ~ 杨保华 戴王剑 曹亚仑 ...

  6. docker-9 supervisord 参考docker从入门到实战

    参考docker从入门到实战 使用 Supervisor 来管理进程 Docker 容器在启动的时候开启单个进程,比如,一个 ssh 或者 apache 的 daemon 服务.但我们经常需要在一个机 ...

  7. Docker技术入门与实战 第二版-学习笔记-10-Docker Machine 项目-2-driver

    1>使用的driver 1〉generic 使用带有SSH的现有VM/主机创建机器. 如果你使用的是机器不直接支持的provider,或者希望导入现有主机以允许Docker Machine进行管 ...

  8. Docker技术入门与实战 第二版-学习笔记-8-网络功能network-3-容器访问控制和自定义网桥

    1)容器访问控制 容器的访问控制,主要通过 Linux 上的 iptables防火墙来进行管理和实现. iptables是 Linux 上默认的防火墙软件,在大部分发行版中都自带. 容器访问外部网络 ...

  9. Docker技术入门与实战(文摘)

    第一部分 基础入门 第1章 初识容器与Docker 第2章 核心概念与安装配置 第二部分 实战案例 第三部分 进阶技能 第四部分 开源项目

随机推荐

  1. ACM学习历程—HDU1030 Delta-wave(数学)

    Description A triangle field is numbered with successive integers in the way shown on the picture be ...

  2. bzoj 1043 下落的圆盘 —— 求圆心角、圆周长

    题目:https://www.lydsy.com/JudgeOnline/problem.php?id=1043 求出每个圆没被覆盖的长度即可: 特判包含和相离的情况,注意判包含时 i 包含 j 和 ...

  3. JavaScript运行机制与setTimeout

    前段时间,老板交给了我一个任务:通过setTimeout来延后网站某些复杂资源的请求.正好借此机会,将JavaScript运行机制和setTimeout重新认真思考一遍,并将我对它们的理解整理如下. ...

  4. long long 与__int64使用总结

    本文摘自网络.原文网址:http://blog.sina.com.cn/s/blog_6aa178410100vlwr.html 前言: 在16位环境下,int/unsigned int 占16位,l ...

  5. Kill掉MySQL中所有sleep的client线程 (转)

    vim killsleep.sh #It is used to kill processlist of mysql sleep #!/bin/sh while : do   n=`mysqladmin ...

  6. glusterfs安装配置简单使用

    GlusterFS是一种分布式分布式文件系统,默认采用无中心完全对等架构,搭建维护使用十分简单,是很受欢迎的分布式文件系统. 官网https://www.gluster.org/,官网上表示Glust ...

  7. 四 Synchronized

    首先,一个问题:一个boolean成员变量,一个方法赋值,一个方法读值,多线程环境下,需要同步吗? 如果用同步的话,读也要用synchroized修饰,因为可见性的问题 需要同步,或者用volatil ...

  8. Python,PyCharm2017安装教程,包含注册码[转载]

    一,安装PyCharm 1.下载PyCharm 进入https://www.jetbrains.com/pycharm/download/#section=windows官网下载页面,可以到到PyCh ...

  9. CSS之边距合并

    外边距合并指的是,当两个垂直外边距相遇时,它们将形成一个外边距.合并后的外边距的高度等于两个发生合并的外边距的高度中的较大者. 情况1:当一个元素出现在另一个元素上面时,第一个元素的下外边距与第二个元 ...

  10. 【总结整理】JQuery基础学习---样式篇

    进入官方网站获取最新的版本 http://jquery.com/download/    中文 https://www.jquery123.com/ <!--JQuery:轻量级的JavaScr ...