Intro Terraform
CLI
1
2
3
4
terraform init
terraform plan
terraform apply
terraform destroy
definition
Sample - docker
expose docker daemon port
1
2
3
4
5
docker run -it -d --name=socat \
-p 2375:2375 \
-v /var/run/docker.sock:/var/run/docker.sock \
bobrik/socat \
TCP4-LISTEN:2375,fork,reuseaddr UNIX-CONNECT:/var/run/docker.sock
docker.tf
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
provider "docker" {
host = "tcp://127.0.0.1:2375/"
}
resource "docker_image" "nginx" {
name = "nginx:1.11-alpine"
}
resource "docker_container" "nginx-server" {
name = "nginx-server"
image = "${docker_image.nginx.latest}"
ports {
internal = 80
}
volumes {
container_path = "/usr/share/nginx/html"
host_path = "/Users/zcui/Desktop"
read_only = true
}
}
terraform
1
2
3
4
5
terraform init
terraform plan -out dummy.tfplan
terraform apply "dummy.tfplan"
terraform show
terraform destroy
Sample - aws