您正在查看: DOCKER 分类下的文章

docker kitematic_README

Kitematic: 安装 Kitematic

你可以在 Mac 或者 Windows PC 上像安装其它应用一样来安装 Kitematic:下载安装包,运行安装程序。

##下载 Kitematic

[下载 Kitematic的 zip 文件]https://kitematic.com/download/,双击解压文件,然后双击运行安装程序。您可能还需要将你的应用程序放到您的应用程序文件夹。

##初始化设置

第一次打开 Kitematic 会为你能够运行 docker 容器而进行一些必要的设置。如果你没有安装 Virtualbox, Kitematic 会下载和安装最新版本。

png" alt="安装图片" />

做完这些之后!在一分钟之内,你就可以准备开始运行你的第一个容器。

png" alt="容器" />

##技术详细信息

Kitematic 是一个建立在其它应用上的 app,能够处理异常:

  • 如果 Virtualbox 没有安装,它将会安装它。

为什么 Kitematic 需要 root 密码

为什么 Kitematic 需要你的 root 密码,这里有两个原因:

  • 安装 Virtualbox 需要 root 权限,因为安装的时候需要对 Mac OS X 内核进行扩展。
  • 如果你在安装 Kitematic 之前更改了默认的目录权限,当你复制 dockerdocker-machine/usr/local/bin 是需要 root 权限的。

##下一步

有关使用 Kitematic 的信息,请查看用户指南。

docker installation_opensuse

openSUSE

docker 支持 openSUSE 12.3 或更高版本。由于 docker 的限制,Docker 只能运行在64位的主机上。

Docker 不被包含在 openSUSE 12.3 和 openSUSE 13.1 的官方镜像仓库中。因此需要添加 OBS 的 [虚拟化仓库]https://build.opensuse.org/project/show/Virtualization "Virtualization repository " 来安装 docker

执行下边的命令来添加虚拟化仓库(Virtualization repository):

# openSUSE 12.3
$ sudo zypper ar -f http://download.opensuse.org/repositories/Virtualization/openSUSE_12.3/ Virtualization

# openSUSE 13.1
$ sudo zypper ar -f http://download.opensuse.org/repositories/Virtualization/openSUSE_13.1/ Virtualization

在 openSUSE 13.2版本以后就不需要添加额外的库了。

###SUSE linux Enterprise

可以在 SUSE linux Enterprise 12 或 更高版本上来运行 Docker 。这里需要注意的是由于 Docker 当前的限制,只能在64位的主机上运行。

##安装

安装 Docker 包

$ sudo zypper in docker

现在已经安装完毕,让我们来启动 docker 进程

$ sudo systemctl start docker

设置开机启动 docker:

$ sudo systemctl enable docker

Docker 包会创建一个的叫 docker 的群组 ,如果想使用非 root 用户来运行,这个用户需要是 docker 群组的成员才可以与 docker 进程进行交互,你可以使用如下命令添加用户:

$ sudo usermod -a -G docker <username>

确认一切都是否按照预期工作:

$ sudo docker run --rm -i -t opensuse /bin/bash

这条命令将下载和导入 opensuse 镜像,并且在容器内运行 bash,输入 exit 来退出容器。

如果你想要你的容器能够访问外部的网络,你就需要开启 net.ipv4.ip_forward 规则。这里你可以使用 YaST 工具查找 Network Devices -> Network Settings -> Routing 按钮来确认 IPv4 Forwarding 选择框是否被选中。

当由 Network Manager 来管理网络的时候,就不能按照上边的方法设置了。这里我们需要手动的编辑 /etc/sysconfig/SuSEfirewall2 文件来确保 FW_ROUTE 被设置成 yes,如下:

FW_ROUTE="yes"

自定义进程选项

如果你想要添加一个 HTTP 代理,为 Docker 运行文件设置不同的目录或分区,又或者定制一些其它的功能,请阅读我们的系统文章,了解如何定制 Docker 进程

##下一步

阅读用户指南。

docker installation_rackspace

#Rackspace Cloud

由 Rackspace 提供的 Ubuntu 安装 docker 是非常简单的,你可以大多按照Ubuntu的安装指南。

不过请注意:

如果你使用的 linux 发行版没有运行 3.8 内核,你就必须升级内核,这个在 Rackspace 上是有些困难的。

Rackspace 使用 grub 的 menu.lst 启动服务,虽然它们运行正常,但是并不像非虚拟软件包(如xen兼容)内核那样。所以你必须手动设置内核。

不要在上线部署的机器上尝试这样做:

# 更新apt
$ apt-get update

# 安装新内核
$ apt-get install linux-generic-lts-raring

非常好,现在你已经将内核安装到 /boot/ 下,下一步你需要让它在重新启动后生效。

# find the exact names
$ find /boot/ -name '*3.8*'

# this should return some results

现在你需要手动编译 /boot/grub/menu.list ,在底部有相关选项。复制和替换成新内核,确保新内核在最上边,仔细检查内核和 initrd 指向的文件是否正确。

要特别注意检查内核和 initrd 条目。

# 现在编辑 /boot/grub/menu.lst
 vi /boot/grub/menu.lst

这是配置好的样子:

## ## End Default Options ##

title              Ubuntu 12.04.2 LTS, kernel 3.8.x generic
root               (hd0)
kernel             /boot/vmlinuz-3.8.0-19-generic root=/dev/xvda1 ro quiet splash console=hvc0
initrd             /boot/initrd.img-3.8.0-19-generic

title              Ubuntu 12.04.2 LTS, kernel 3.2.0-38-virtual
root               (hd0)
kernel             /boot/vmlinuz-3.2.0-38-virtual root=/dev/xvda1 ro quiet splash console=hvc0
initrd             /boot/initrd.img-3.2.0-38-virtual

title              Ubuntu 12.04.2 LTS, kernel 3.2.0-38-virtual (recovery mode)
root               (hd0)
kernel             /boot/vmlinuz-3.2.0-38-virtual root=/dev/xvda1 ro quiet splash  single
initrd             /boot/initrd.img-3.2.0-38-virtual

重启你的服务器(通过命令行或者控制台):

reboot

验证你的内核是否升级成功

$ uname -a
# Linux docker-12-04 3.8.0-19-generic #30~precise1-Ubuntu SMP Wed May 1 22:26:36 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux

# nice! 3.8.

现在升级内核完成,更多信息查看ubuntu文档安装

docker installation_redhat

Red Hat Enterprise linux

以下是支持 docker 的 RHEL 版本:

  • Red Hat Enterprise linux 7 (64-bit)
  • Red Hat Enterprise Linux 6.5 (64-bit) 或更高版本

内核支持

如果你的 RHEL 运行的是发行版内核。那就仅支持通过 extras 渠道或者 EPEL 包来安装 docker。如果你打算在非发行版本的内核上运行 Docker ,内核的改动可能会导致出错

Red Hat Enterprise Linux 7 installation

Red Hat Enterprise Linux 7 (64位) [自带Docker]https://access.redhat.com/site/products/red-hat-enterprise-linux/docker-and-containers. 你可以在[发行日志]https://access.redhat.com/site/documentation/en-US/Red_Hat_Enterprise_Linux/7/html/7.0_Release_Notes/chap-Red_Hat_Enterprise_Linux-7.0_Release_Notes-Linux_Containers_with_Docker_Format.html中找到概述和指南。

Docker 包含在 extras 镜像源中,使用下面的方法可以安装 Docker:

  1. 启用 extras 镜像源:

     $ sudo subscription-manager repos --enable=rhel-7-server-extras-rpms
    
  2. 安装 Docker :

     $ sudo yum install docker 
    

如果你是RHEL客户,更多的 RHEL-7 安装、配置和[用户指南]https://access.redhat.com/site/articles/881893可以在[客户中心]https://access.redhat.com/中找到。

请继续阅读 启动 Docker 进程 .

Red Hat Enterprise Linux 6.5 installation

你需要在 64位 的 [RHEL 6.5]https://access.redhat.com/site/articles/3078#RHEL6 或更高的版本上来安装 Docker,Docker 工作需要特定的内核补丁, 因此 RHEL 的内核版本应为 2.6.32-431 或者更高。

Docker 已经包含在 RHEL 的 EPEL 源中。该源是 Extra Packages for Enterprise Linux (EPEL) 的一个额外包,社区中正在努力创建和维护相关镜像。

内核支持

如果你的 RHEL 运行的是发行版内核。那就仅支持通过 extras 渠道或者 EPEL 包来安装 Docker。如果你打算在非发行版本的内核上运行 Docker ,内核的改动可能会导致出错

Warning:
Please keep your system up to date using yum update and rebooting
your system. Keeping your system updated ensures critical security
vulnerabilities and severe bugs (such as those found in kernel 2.6.32)
are fixed.

首先,你需要安装EPEL镜像源,请查看 [EPEL installation instructions]https://fedoraproject.org/wiki/EPEL#How_can_I_use_these_extra_packages.3F.

在EPEL中已经提供了 docker-io

如果你安装了(不相关)的 Docker 包,它将与 docker-io 冲突。在安装 docker-io 之前,请先卸载 Docker

下一步,我们将要在我们的主机中安装 Docker,也就是 docker-io 包:

$ sudo yum -y install docker-io

更新docker-io包:

$ sudo yum -y update docker-io

现在 Docker 已经安装好了,我们来启动 docker 进程:

$ sudo service docker start

设置开机启动:

$ sudo chkconfig docker on

现在,让我们确认 Docker 是否正常工作:

$ sudo docker run -i -t fedora /bin/bash

继续 启动 Docker 进程

启动 Docker 进程

现在 Docker 已经安装好了,让我们来启动 Docker 进程

$ sudo service docker start

如果我们想要开机启动 Docker ,我们需要执行如下的命令:

$ sudo chkconfig docker on

现在测试一下是否正常工作.

$ sudo docker run -i -t fedora /bin/bash

注意: 如果你运行的时候提示一个 Cannot start container 的错误,错误中提到了 SELINUX 或者 权限不足。你需要更新 SELINUX 规则。你可以使用 sudo yum upgrade selinux-policy 然后重启。

下一步

好!现在你可以去查看用户指南。

自定义进程选项

如果你想要添加一个 HTTP 代理,为 Docker 运行文件设置不同的目录或分区,又或者定制一些其它的功能,请阅读我们的系统文章,了解如何定制 Docker 进程

##问题

遇到问题请到 [Red Hat Bugzilla for docker-io component]https://bugzilla.redhat.com/enter_bug.cgi?product=Fedora%20EPEL&component=docker-io 进行反馈。

docker installation_gentoo

#Gentoo

在 Gentoo linux 上安装 docker 可以通过以下两种方式的任一种实现:官方安装方法和 docker-overlay 方法。

官方 [ Gentoo Docker ]https://wiki.gentoo.org/wiki/Project:Docker 团队页面。

官方方式

如果你正在寻找一种稳定的方案,最好的办法就是直接在 portage tree 上安装官方的 app-emulation/docker 包。

如果 ebuild 时出现任何问题,包括缺少内核配置标识或依赖,请到 Gentoo 的 [ Bugzilla ]https://bugs.gentoo.org/ 网站上指定的 docker AT gentoo DOT org 提交问题,或者加入 Freenode 的 Gentoo 官方 [IRC]http://webchat.freenode.net?channels=%23gentoo-containers&uio=d4 频道来提问。

docker-overlay 方法

如果你正在寻找一个 -bin ebuild, live ebuild, 或者 bleeding edge ebuild,可以使用 overlay 提供的[docker-overlay]https://github.com/tianon/docker-overlay。使用 app-portage/layman 来添加第三方的 portage。查看最新的安装和使用 overlay 的文档请,请点击 [the overlay README]https://github.com/tianon/docker-overlay/blob/master/README.md#using-this-overlay。

如果 ebuild 或者生成的二进制文件时出现任何问题,包括特别是缺少内核配置标识或依赖关系,请 [在 docker-overlay 仓库提交一个 issue]https://github.com/tianon/docker-overlay/issues 或者直接在 freenode 网络的 #docker IRC 频道上联系 tianon。

安装

Available USE flags

USE Flag Default Description
aufs Enables dependencies for the "aufs" graph driver, including necessary kernel flags.
btrfs Enables dependencies for the "btrfs" graph driver, including necessary kernel flags.
contrib Yes Install additional contributed scripts and components.
device-mapper Yes Enables dependencies for the "devicemapper" graph driver, including necessary kernel flags.
doc Add extra documentation (API, Javadoc, etc). It is recommended to enable per package instead of globally.
lxc Enables dependencies for the "lxc" execution driver.
vim-syntax Pulls in related vim syntax scripts.
zsh-completion Enable zsh completion support.

这个包会适当的获取必要的依赖和提示的内核选项。

[ tianon's ]https://tianon.github.io/post/2014/05/17/docker-on-gentoo.html 的博客中有详细的使用标识的介绍。

$ sudo emerge -av app-emulation/docker

注:有时候官方的 Gentoo treedocker-overlay 的最新版本还是有差距的,请耐心等待,最新版本会很快更新。

##启动 Docker

请确保您运行的内核包含了所有必要的模块和配置(可选的 device-mapper 和 AUFS 或 Btrfs ,这主要取决于你要使用的存储驱动程序)。

使用 Docker,docker 进程必须以 root 用户运行。

非root 用户使用 Docker,可以使用下边的命令,将你自己的用户添加到 docker 用户组 。

$ sudo usermod -a -G docker user

###OpenRC

启动 docker 进程:

$ sudo /etc/init.d/docker start

开机启动:

$ sudo rc-update add docker default

###systemd

启动 docker 进程:

$ sudo systemctl start docker.service

开机启动:

$ sudo systemctl enable docker.service

如果你想要添加一个 HTTP 代理,为 Docker 运行文件设置不同的目录或分区,又或者定制一些其它的功能,请阅读我们的系统文章,了解如何定制 Docker 进程