我正在努力完成Gitlab PSE途径的实现课程。
我已经完成了环境的所有设置,配置了必要的文件,现在是运行Toolkit (GET) Docker容器的步骤。
将自己定位到适当的文件夹后:
cd/gitlab-environment-toolkit/起程拓殖/环境/3 k
我可以运行terraform init
并且运行成功
图像1
但运行后
terraform plan out 3k.aws_ec2.tfplan
它给了我一个错误
图2
我的主。Tf看起来像这样
terraform {
required_providers {
aws = {
source = "hashicorp/aws"
}
}
}
# Configure the AWS Provider
provider "aws" {
region = var.region
}
并且我已经在linux实例上设置了环境变量
图片3
和运行命令:
docker run -it
-v /home/ec2-user/gitlab-environment-toolkit/keys:/gitlab-environment-toolkit/keys
-v /home/ec2-user/gitlab-environment-toolkit/ansible/environments/3k:/gitlab-environment-toolkit/ansible/environments/3k
-v /home/ec2-user/gitlab-environment-toolkit/ansible/ansible.cfg:/gitlab-environment-toolkit/ansible/ansible.cfg
-v /home/ec2-user/gitlab-environment-toolkit/terraform/environments/3k:/gitlab-environment-toolkit/terraform/environments/3k
-e AWS_ACCESS_KEY_ID=$AWS_ACCESS_KEY_ID
-e AWS_SECRET_ACCESS_KEY=$AWS_SECRET_ACCESS_KEY
-e GITLAB_PASSWORD=$GITLAB_PASSWORD
registry.gitlab.com/gitlab-org/gitlab-environment-toolkit:latest
我将值传递给这些变量,并在Docker映像中使用它们,但它给了我上面显示的错误。
我想确保我使用的是正确的AWS密钥,我在这个屏幕上使用它们:
图片4
我听说你也可以在这里使用它们,但是我没有权限:
5图像
有人能帮我吗?在运行terraform后,我只需要运行可见的脚本并完成workshop,我很接近但无法找出terraform错误,任何帮助将非常感激。
提前感谢。
我试着修改主程序。tf文件,与硬编码AWS_ACCESS_KEY_ID和AWS_SECRET_ACCESS_KEY,我也试图改变区域从不同的安装文件从Terraform变量。Tf和environment . Tf
我认为一个可能的问题是,我没有得到正确的密钥从AWS由于我缺乏访问IAM屏幕我早些时候显示,我得到的密钥显示,这些是临时凭据,但我仍然使用他们很快从我登录到AWS和执行命令。
希望对你有帮助。
问题确实出在AWS_ACCESS_KEY_ID和AWS_SECRET_ACCESS_KEY上,AWS对安全性非常挑剔,所以我们不得不对策略和角色进行一些更改以使其正常工作,这是一个麻烦,但我们设法在那之后继续,谢谢。