Docker 云


Docker Cloud 是 Docker 提供的一项服务,可以在其中进行以下操作:

  • 多节点(Nodes): 可以将 Docker Cloud 连接到你现有的云提供商,例如 Azure 和 AWS,以在这些环境中启动容器;

  • 云存储库(Cloud Repository): 提供了一个可以存放自己的仓库的地方;

  • 持续集成(Continuous Integration): 与Github连接并构建持续集成管道;

  • 应用部署(Application Deployment): 部署和扩展基础设施和容器;

  • 持续部署(Continuous Deployment): 可以自动化部署。

入门


可以通过以下链接开始使用 Docker Cloud: https://cloud.docker.com/

Docker Cloud

登录后,将看到以下基本界面:

Basic Interface

连接到云提供商


第一步是连接到现有的云提供商。

以下步骤将展示如何与亚马逊云提供商连接。

步骤1: 第一步是要确保你有正确的AWS密钥,这可以从aws控制台中获取,使用以下链接登录你的AWS账户 https://aws.amazon.com/console/ ;

AWS Management Console

步骤2: 登录后,进入安全凭证部分,记下将从 Docker Hub 使用的访问密钥:

Security Credentials section

步骤3:接下来,你需要在aws中创建一个策略,允许Docker查看EC2实例,进入aws中的配置文件部分,单击 "Create Policy "按钮:

Create Policy

步骤4: 单击“Create Your Own Policy”,将策略名称指定为dockercloudpolicy以及添加如下所示的策略定义,之后点击“Create Policy”按钮:

{ 
    "Version": "2012-10-17",
    "Statement": [ {
        "Action": [
            "ec2:*",
            "iam:ListInstanceProfiles"
        ],
        "Effect": "Allow",
        "Resource": "*"
    } ]
}

Review Policy

步骤5:创建一个角色(Role),它将被Docker用来在AWS上启动节点。为此,进入AWS的Roles部分,点击Create New Role按钮:

Create New Role

步骤6: 给角色命名为dockercloud-role

Next Step

步骤7: 下一步,转到“Role for Cross Account Access(跨账户访问的角色)”并选择“Provide access between your account and a 3rd party AWS account(在你的账户和第 3 方 AWS 账户之间提供访问)”:

Select Role Type

步骤8: 下一步,输入以下详细信息:

  • 在 Account ID 字段中,输入 Docker Cloud 服务的 ID:689684103426;

  • 在 External ID 字段中,输入你的 Docker Cloud 用户名。

Account External ID

步骤9: 然后,点击“Next Step”按钮,然后在下一个屏幕上,附加上一步中创建的策略:

Attach Policy

步骤10: 最后,在创建角色时的最后一个屏幕,确保复制arn创建的角色:

arn:aws:iam::085363624145:role/dockercloud-role

Create Role Name ARN

步骤11: 现在回到Docker Cloud,选择Cloud providers(云供应商),然后单击亚马逊网络服务旁边的插头符号

Cloud Providers

输入arn角色并单击Save按钮:

AWS Credentials

保存后,与 AWS 的集成完成。

Integration with AWS

设置节点


与 AWS 的集成完成后,下一步是设置节点。转到 Docker Cloud 中的节点部分,请注意,节点的设置将首先自动设置节点集群。

步骤1: 进入Docker Cloud中的Nodes部分:

Nodes Section

步骤2: 接下来,提供在 AWS 中设置的节点的详细信息:

Node Clusters Wizard

然后,单击将出现在屏幕底部的 Launch Node 集群。部署节点后,你将在“Node Cluster”屏幕中收到通知。

Actions

部署服务


部署节点后的下一步是部署服务。为此,需要执行以下步骤。

步骤1:进入Docker Cloud的Services,点击 "Create"按钮:

Services Section

步骤2: 选择需要的服务,在例子中,我们选择mongo

Mongo

步骤3: 在下一个屏幕上,选择Create & Deploy选项,这将开始部署Mongo节点集群上的容器:

Create Deploy

部署后,将能够看到处于运行状态的容器。

Container in Running State