terraform init慢的解决办法
学习terraform时,遇到terraform init慢的问题,一般是在下provider时连不上服务器导致。在terraform init这条命令执行的时候,除了会去找.tf配置文件,还会根据你在.tf配置文件里用的provider去下载对应的plugin,然后放到%APPDATA%\terraform.d\plugins这个文件夹里(Windows),其它OS路径应该在~/.terraform.d/plugins这个文件夹下。所以现在这个问题就清楚了,下载插件时候本机和提供插件的服务不能通信了,解决办法就是,手动下载一下需要的插件。
详细可参考terraform官网:
https://www.terraform.io/docs/commands/init.html#plugin-installation
解决方案
1. 需要去官网下载对应的plugin,这里我用的是,所以直接下载alicloud的plugin,下面是下载地址:
https://releases.hashicorp.com/terraform-provider-alicloud/1.206.0/
2. 将下载好的zip文件解压,把解压出的文件 terraform-provider-alicloud_v1.206.0.exe 放到C:\Users\{YourUserName}\AppData\Roaming\terraform.d\plugins 文件夹下,plugins这个文件夹如果没有,自己创建一个。
3. 运行
terraform init -plugin-dir=C:/Users/{YourUserName}/AppData/Roaming/terraform.d/plugins
(请特别注意命令中的斜线方向是 / 而不是 \)