阿里云ECS Docker Machine Driver入门指南

本文涉及的产品
容器镜像服务 ACR,镜像仓库100个 不限时长
简介:

Docker Machine Driver of Aliyun ECS

Docker技术目前在无论在社区还是在企业应用中,都有很强烈的反响。为了使得用户可以在阿里云ECS上体验和使用Docker技术,我们开发了相应的Docker Machine驱动。
在创建machine之前,首先需要有一对阿里云的安全秘钥以及对应的Region信息。如果想创建VPC网络,还需要有VPC ID和VSwitch ID。相关信息的获取可以通过登录阿里云的控制台,选择相应的产品即可管理对应产品的信息。
接下来我们来详细介绍一下如何使用阿里云ECS的Docker Mahine驱动。

创建Machine命令

docker-machine create -d aliyunecs <machine-name> --options

安装

目前安装阿里云Docker Machine Driver有两种方式。一种是通过go install的方式

go install github.com/denverdino/docker-machine-driver-aliyunecs

同时,我们也提供了编译好的软件包供下载。可以移步到 drone.io选择适合自己平台的软件包

Demo

创建ECS的时候,目前可以有两种方式。第一种是可以通过把一些配置信息设置到环境变量中,在这种场景下,我们可以把一些公共的信息放到环境变量中,这样就无需每次都输入相同的参数。

export ECS_ACCESS_KEY_ID ='<Your access key ID>'
export ECS_ACCESS_KEY_SECRET    ='<Your secret access key>'
export ECS_API_ENDPOINT ='<The custom API endpoint>'
export ECS_DESCRIPTION ='<The description of instance>'
export ECS_DISK_SIZE ='<The data disk size>'
export ECS_DISK_CATEGORY ='<The category of data disk>'


docker-machine create -d aliyunecs <machine-name>

或者,所有的参数都通过命令行参数来传递

docker-machine create -d aliyunecs --aliyunecs-tag provider=aliyuncos --aliyunecs-tag version=1.0 --aliyunecs-disk-size=20 --aliyunecs-io-optimized=optimized --aliyunecs-description=aliyunecs-machine-driver --aliyunecs-instance-type=<InstanceType> --aliyunecs-access-key-id=<Your access key ID for the Aliyun ECS API> --aliyunecs-access-key-secret=<Your secret access key for the Aliyun ECS API>  --aliyunecs-disk-category=<DiskCategory>  --aliyunecs-region=<Region>--aliyunecs-ssh-password=<SSH Password> <machine-name>

参数介绍

可以通过以下的命令来查看,阿里云ECS Docker Machine Driver支持的参数列表

docker-machine create -d aliyunecs --help
Option Name Description required
--aliyunecs-access-key-id Your access key ID for the Aliyun ECS API. yes
--aliyunecs-access-key-secret Your secret access key for the Aliyun ECS API. yes
--aliyunecs-api-endpoint The custom API endpoint.
--aliyunecs-description The description of instance.
--aliyunecs-disk-size The data disk size for /var/lib/docker (in GB)
--aliyunecs-disk-category The category of data disk, the valid values could be cloud (default), cloud_efficiency or cloud_ssd.
--aliyunecs-image-id The image ID of the instance to use Default is the latest Ubuntu 14.04 provided by system
--aliyunecs-io-optimized The I/O optimized instance type, the valid values could be none (default) or optimized
--aliyunecs-instance-type The instance type to run. Default: ecs.t1.small
--aliyunecs-internet-max-bandwidth Maxium bandwidth for Internet access (in Mbps), default 1
--aliyunecs-private-address-only Use the private IP address only
--aliyunecs-region The region to use when launching the instance. Default: cn-hangzhou
--aliyunecs-route-cidr The CIDR to use configure the route entry for the instance in VPC. Sample: 192.168.200.0/24
--aliyunecs-security-group Aliyun security group name. Default: docker-machine
--aliyunecs-slb-id SLB id for instance association
--aliyunecs-ssh-password SSH password for created virtual machine. Default is random generated.
--aliyunecs-system-disk-category System disk category for instance
--aliyunecs-tag Tag for the instance.
--aliyunecs-vpc-id Your VPC ID to launch the instance in. (required for VPC network only)
--aliyunecs-vswitch-id Your VSwitch ID to launch the instance with. (required for VPC network only)
--aliyunecs-zone The availabilty zone to launch the instance

环境变量对应的参数以及默认值

CLI option Environment variable Default
--aliyunecs-access-key-id ECS_ACCESS_KEY_ID -
--aliyunecs-access-key-key ECS_ACCESS_KEY_SECRET -
--aliyunecs-api-endpoint ECS_API_ENDPOINT -
--aliyunecs-description ECS_DESCRIPTION -
--aliyunecs-disk-size ECS_DISK_SIZE -
--aliyunecs-disk-category ECS_DISK_CATEGORY -
--aliyunecs-image-id ECS_IMAGE_ID -
--aliyunecs-aliyunecs-io-optimized ECS_IO_OPTIMIZED none
--aliyunecs-instance-type ECS_INSTANCE_TYPE ecs.t1.small
--aliyunecs-internet-max-bandwidth ECS_INTERNET_MAX_BANDWIDTH 1
--aliyunecs-private-address-only ECS_PRIVATE_ADDR_ONLY false
--aliyunecs-region ECS_REGION cn-hangzhou
--aliyunecs-route-cidr ECS_ROUTE_CIDR -
--aliyunecs-security-group ECS_SECURITY_GROUP -
--aliyunecs-slb-id ECS_SLB_ID -
--aliyunecs-ssh-password ECS_SSH_PASSWORD Random generated
--aliyunecs-tag ECS_TAGS -
--aliyunecs-vpc-id ECS_VPC_ID -
--aliyunecs-vswitch-id ECS_VSWITCH_ID -
--aliyunecs-zone ECS_ZONE -

注:环境变量设置的默认参数都会在运行时被命令行传入的参数替换

内核要求

我们默认的Ubuntu镜像对于需要的内核版本为3.16+,另外一些高级的swarm/networking 功能需要更新的内核版本

可以通过 docker-machine ssh登录到ECS,执行 apt-get install -qy linux-image-generic-lts-wily && reboot来升级内核

代码贡献

获取资源

go get github.com/denverdino/docker-machine-driver-aliyunecs
cd $GOPATH/src/github.com/denverdino/docker-machine-driver-aliyunecs

Driver测试

在测试Driver之前,首先要保证当前的构建目录在$PATH中有高的优先级,以便于docker-machine可以引用到它。

export PATH=$GOPATH/src/github.com/denverdino/docker-machine-driver-aliyunecs:$PATH

相关资源

License

Apache 2.0

相关实践学习
快速体验PolarDB开源数据库
本实验环境已内置PostgreSQL数据库以及PolarDB开源数据库:PolarDB PostgreSQL版和PolarDB分布式版,支持一键拉起使用,方便各位开发者学习使用。
7天玩转云服务器
云服务器ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,可降低 IT 成本,提升运维效率。本课程手把手带你了解ECS、掌握基本操作、动手实操快照管理、镜像管理等。了解产品详情:&nbsp;https://www.aliyun.com/product/ecs
目录
相关文章
|
22天前
|
存储 缓存 弹性计算
阿里云经济型e实例云服务器评测:企业官网搭建的性价比之选
阿里云服务器经济型e实例可以用来搭建企业网站吗?云服务器作为搭建企业官网的基础设施,其性能、稳定性、成本等因素直接影响着官网的运营效果。阿里云经济型e实例云服务器作为一款性价比较高的产品,备受用户关注。许多企业在选择云服务器搭建官网时,都会将其纳入考虑范围。本文将详细探讨阿里云经济型e实例云服务器的特点、性能表现、稳定性与可靠性,以及成本考量,最终解答是否适合用它来搭建企业官网。
|
2月前
|
存储 缓存 网络协议
阿里云特惠云服务器99元与199元配置与性能和适用场景解析:高性价比之选
2025年,阿里云长效特惠活动继续推出两款极具吸引力的特惠云服务器套餐:99元1年的经济型e实例2核2G云服务器和199元1年的通用算力型u1实例2核4G云服务器。这两款云服务器不仅价格亲民,而且性能稳定可靠,为入门级用户和普通企业级用户提供了理想的选择。本文将对这两款云服务器进行深度剖析,包括配置介绍、实例规格、使用场景、性能表现以及购买策略等方面,帮助用户更好地了解这两款云服务器,以供参考和选择。
|
2月前
|
域名解析 人工智能 弹性计算
DeepSeek服务器繁忙解决方法:使用阿里云一键部署DeepSeek个人网站!
通过阿里云一键部署DeepSeek个人网站,解决服务器繁忙问题。学生用户可领取300元代金券实现0成本部署,普通用户则可用99元/年的服务器。教程涵盖从选择套餐、设置密码到获取百炼API-KEY的全流程,助您快速搭建专属大模型主页,体验DeepSeek、Qwen-max、Llama等多款模型,无需代码,最快5分钟完成部署。支持绑定个人域名,共享亲友使用,日均成本仅约1元。
179 10
|
24天前
|
弹性计算 关系型数据库 Apache
阿里云实验基于ECS搭建云上博客
实验网址https://developer.aliyun.com/adc/scenario/fdecd528be6145dcbe747f0206e361f3?spm=a2c6h.13858375.devcloud-scene-list.4.d1a04090jMEG9j
89 26
|
29天前
|
安全 Linux
阿里云linux服务器使用脚本通过安全组屏蔽异常海外访问ip
公网网站可能会遭受黑客攻击导致访问异常,使用此脚本可以屏蔽掉异常IP 恢复访问。也可自行设置定时任务定期检测屏蔽。
150 28
|
20天前
|
存储 机器学习/深度学习 算法
阿里云X86/ARM/GPU/裸金属/超算等五大服务器架构技术特点、场景适配与选型策略
在我们选购阿里云服务器的时候,云服务器架构有X86计算、ARM计算、GPU/FPGA/ASIC、弹性裸金属服务器、高性能计算可选,有的用户并不清楚他们之间有何区别。本文将深入解析这些架构的特点、优势及适用场景,帮助用户更好地根据实际需求做出选择。
|
23天前
|
存储 开发框架 安全
阿里云轻量应用服务器38元与云服务器99元和199元区别及选择参考
2025年,阿里云推出了多款价格比较实惠的轻量应用服务器和云服务器,这些产品以其卓越的性能和亲民的价格,吸引了众多个人开发者、小型网站以及中小企业的关注。本文将对这几款轻量应用服务器和云服务器进行详细对比和测评,分析其性能和适用场景,以供大家在选择时参考。
|
1月前
|
存储 机器学习/深度学习 人工智能
阿里云第八代云服务器c8i与g8i深度解析:技术对比、场景适配与选购指南
阿里云服务器计算型c8i与通用型g8i实例属于阿里云的第八代云服务器实例规格,是除了计算型c7与c8y和通用型g7与g8y之外同样深受用户喜欢的云服务器实例规格。本文将详细解析计算型c8i与通用型g8i实例的技术特性、适用场景、性能优势,以及最新的活动价格情况,并为用户提供购买建议。
|
2月前
|
弹性计算 运维 监控
【阿里云】控制台使用指南:从创建ECS到系统诊断测评
本文介绍了如何通过阿里云获取ECS云服务器并进行操作系统配置与组件安装,以实现高效的资源管理和系统监控。阿里云凭借强大的基础设施和丰富的服务成为用户首选。文中详细描述了获取ECS、RAM授权、开通操作系统控制台及组件安装的步骤,并展示了如何利用控制台实时监控性能指标、诊断系统问题及优化性能。特别针对idle进程进行了深入分析,提出了优化建议。最后,建议定期进行系统健康检查,并希望阿里云能推出更友好的低成本套餐,满足学生等群体的需求。
190 17
【阿里云】控制台使用指南:从创建ECS到系统诊断测评
|
1月前
|
自然语言处理 大数据 云计算
「轻」启未来:阿里云轻量应用服务器用户交流会
扫描海报二维码报名,赢取百元代金券!