关于gcloud compute instances create的--image-project参数的疑问
关于--image-project参数的疑问解答
- 官方文档的说明是准确的,你遇到的
debian-cloud不出现在gcloud projects list结果的问题,是文档描述省略了前提:gcloud projects list默认仅返回当前账号拥有明确访问、管理权限的项目。而debian-cloud属于GCP官方维护的公共镜像项目,仅对所有用户开放镜像的读取使用权限,不会把项目本身加入你有权限管理的项目列表,因此不会出现在查询结果中。 - 你的理解完全正确:
--image-project参数的作用就是指定你要使用的虚拟机镜像所在的GCP项目。你示例中的debian-cloud正是由Debian官方和GCP合作维护的、专门用于托管Debian系列公共虚拟机镜像的项目。
补充说明:
- 如果你使用自己项目内创建的自定义私有镜像,
--image-project就填写你自己的项目ID,该项目会正常出现在你的gcloud projects list结果中。 - 显式指定
--image-project是最佳实践的原因:如果不指定该参数,gcloud会默认优先在当前激活的本地账号所属项目中查找对应镜像,找不到才会遍历公共镜像项目,容易出现镜像匹配错误、创建实例失败的问题,显式指定可以完全规避该风险。
内容的提问来源于stack exchange,提问作者mon
相关产品推荐
相关产品推荐

