by XDK
18. September 2019 21:45
Exception:
Error: Reference to undeclared resource
on base.tf line 65, in resource "aws_subnet" "public-subnet-a":
65: availability_zone = "${data.aws_availability_zones.available.names[0]}"
A data resource "aws_availability_zones" "available" has not been declared in
the root module.
Explanation:
The exception occurred while assigning the availability zone for a region in the terraform template.
resource "aws_subnet" "public-subnet-a" {
vpc_id = "${aws_vpc.vpc.id}"
map_public_ip_on_launch = true
cidr_block = "10.0.10.0/24"
availability_zone = "${data.aws_availability_zones.available.names[0]}"
tags = {
Name = "public-subnet-a:${var.labname}"
}
}
Solution:
Add data module to get the availability zones for a region
data "aws_availability_zones" "available" {}
resource "aws_subnet" "public-subnet-a" {
vpc_id = "${aws_vpc.vpc.id}"
map_public_ip_on_launch = true
cidr_block = "10.0.10.0/24"
availability_zone = "${data.aws_availability_zones.available.names[0]}"
tags = {
Name = "public-subnet-a:${var.labname}"
}
}
by XDK
18. September 2019 21:33
Explanation:
AWS CLI command to create custom AWS profile
aws configure --profile <profile name>
Verification command
aws sts get-caller-identity --profile <demo>
Output:
{
"UserId": "AIDAYHQTXQ2MWUGOD24RV",
"Account": "565903328921",
"Arn": "arn:aws:iam::565903328921:user/<APIUser>"
}
d29ed651-c491-49af-a8bc-d0ef3d54a2cb|0|.0|96d5b379-7e1d-4dac-a6ba-1e50db561b04
Tags: CLI
Amazon Web Service
by XDK
31. August 2019 10:39
Explanation:
Open ECR option in Amazon Console Management.
Note: Click on "View Push Commands" to get the command help.
Retrieve the login command to use to authenticate your Docker client to your registry.
Use the AWS CLI: How to install & configure AWS CLI?
$(aws ecr get-login --no-include-email --region us-east-1)
Note: If you receive an "Unknown options: --no-include-email" error when using the AWS CLI, ensure that you have the latest version installed. Learn more
Build your Docker image using the following command. For information on building a Docker file from scratch see the instructions here . You can skip this step if your image is already built:
ubuntu@ip-172-31-43-31:~$ docker build -t xdkrepo/helloworld .
After the build completes, tag your image so you can push the image to this repository:
ubuntu@ip-172-31-43-31:~$ docker tag xdkrepo/helloworld:latest 565903328921.dkr.ecr.us-east-1.amazonaws.com/xdkrepo/helloworld:latest
Run the following command to push this image to your newly created AWS repository:
ubuntu@ip-172-31-43-31:~$ docker push 565903328921.dkr.ecr.us-east-1.amazonaws.com/xdkrepo/helloworld:latest
by XDK
30. August 2019 21:28
Explanation:
Command to Install AWS CLI
ubuntu@ip-172-31-43-31:~$ sudo apt install awscli
Create user for AWS CLI configuration
Command to configure AWS CLI
ubuntu@ip-172-31-43-31:~$ aws configure
AWS Access Key ID [None]: XXXXXXXXXXXXXX
AWS Secret Access Key [None]: XXXXXXXXXXXXXX
Default region name [None]: us-east-1
Default output format [None]:
by XDK
28. August 2019 22:11
Explanation:
To uninstall docker
sudo apt-get purge docker-ce
sudo rm -rf /var/lib/docker
Note: The output of the below command will provide you with information the installed package software, version, architecture and short description about the package. grep command is used to find the docker package
sudo dpkg --get-selections | grep docker | cut -f 1
sudo apt-get remove --purge <package name from the previous command output>
sudo whereis docker
sudo rm -rf <directory/file path from the previous command output>