配置环境变量
通过配置环境变量,可以简化 Docker Machine 命令里每次都要用到的参数。环境变量的参考配置如下所示。
export DEBUG=true
export ECS_ACCESS_KEY_ID=<your_access_key_id>
export ECS_ACCESS_KEY_SECRET=<your_access_key_secret>
export ECS_REGION=<your_ecs_region>
export ECS_SSH_PASSWORD=<your_ssh_password>
export MACHINE_DOCKER_INSTALL_URL= http://acs-public-mirror.oss-cn-hangzhou.aliyuncs.com/docker-engine/internet
# Optional for VPC only
export ECS_VPC_ID=<your_vpc_id>
export ECS_VSWITCH_ID=<your_vswitchid>
说明
ECS_REGION 是您的 ECS 实例的地域,例如,cn-beijing,cn-hangzhou,cn-qingdao。
ECS_SSH_PASSWORD 是您之前设置的 ECS 机器 SSH 登录的密码。密码可以包含 8~30 个字符,必须同时包含以下三种字符(大/小写字母、数字和特殊符号),且不支持反斜杠(\)和双引号(”)。详细信息参见 ECS 实例的 相关文档。
由于 Docker Engine 的官方 repo 在国内访问非常不稳定,您需要将 MACHINE_DOCKER_INSTALL_URL 环境变量配置到如上所示的阿里云镜像站点;否则,在创建机器时可能会出现 Error Creating machine: Error running provisioning: error installing docker 之类的错误。在阿里云内网,可以使用 http://acs-public-mirror.oss-cn-hangzhou.aliyuncs.com/docker-engine/intranet 作为 Docker Engine 的安装镜像。
如果没有 VPC 相关配置,请不要配置 ECS_VPC_ID 和 ECS_VSWITCH_ID 这两个环境变量。如果您有 VPC 相关账号,请确保您当前的 ECS_REGION 支持 VPC 配置。
使用 ECS Driver 创建或删除 ECS 机器
配置过环境变量后,大部分参数使用环境变量默认就可以了。
您可以使用以下命令创建一台带有 Docker 环境的 ECS 实例。docker-machine create -d aliyunecs dev1
示例输出结果如下所示。
$ docker-machine create -d aliyunecs dev1
Running pre-create checks...
Creating machine...
Waiting for machine to be running, this may take a few minutes...
Machine is running, waiting for SSH to be available...
Detecting operating system of created instance...
Provisioning created instance...
Copying certs to the local machine directory...
Copying certs to the remote machine...
Setting Docker configuration on the remote daemon...
To see how to connect Docker to this machine, run: docker-machine env dev1
您可以使用
docker-machine ls 命令查看创建的包含 Docker 环境的机器的情况。
$ docker-machine ls
NAME ACTIVE DRIVER STATE URL SWARM
dev1 - aliyunecs Running tcp://1.2.7.2:9376
您可以使用 docker-machine kill 命令停止此机器,并查看机器状态。
$ docker-machine kill dev1
您可以使用 docker-machine rm 命令删除此机器(也可以不停止机器直接删除机器),并查看机器信息。
$ docker-machine ls
NAME ACTIVE DRIVER STATE URL SWARM
dev1 - aliyunecs Stopped tcp://1.2.7.2:9376
$ docker-machine rm dev1
Successfully removed dev1
$ docker-machine ls
NAME ACTIVE DRIVER STATE URL SWARM
[font=PingFangSC, "]更多
docker-machine
[font=PingFangSC, "] 命令可以参考官方
machine subcommands reference
[font=PingFangSC, "]。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。