/docker-terraform

Docker container for running the Terraform application

Primary LanguageShell

maddinek/docker-terraform

Docker Hub

What is terraform

Terraform provides a common configuration to launch infrastructure from physical and virtual servers to email and DNS providers. Once launched, Terraform safely and efficiently changes infrastructure as the configuration is evolved.

Simple file based configuration gives you a single view of your entire infrastructure.

http://www.terraform.io/

Dockerfile

This Docker image is based on the official Alpine 3.2 base image.

Terraform configuration files

This container expects the user to mount in a directory, which will be mapped to the /data directory inside the container. This is the directory from which Terraform is configured to read the configuration files referenced by the commands you call.

Adopt the Terraform Version

Change the Terraform Version in the Dockerfile (currently 0.11.1)

ENV TERRAFORM_VERSION=0.11.1

Getting started

Build the container

docker build -t terraform .

Set up the symlink (MacOS)

bash install.sh

Set up the symlink (other)

just make the terraform.sh globally reachable.

How to run this image

terraform.sh apply [options]

terraform apply

terraform.sh apply [options]

terraform destroy

terraform.sh destroy [options]

terraform get

terraform.sh get [options]

terraform graph

terraform.sh graph [options]

terraform init

terraform.sh init [options] SOURCE [PATH]

terraform output

terraform.sh output [options] NAME

terraform plan

terraform.sh plan [options]

terraform push

terraform.sh push [options]

terraform refresh

terraform.sh refresh [options]

terraform remote

terraform.sh remote [options]

terraform show

terraform.sh show terraform.tfstate [options]

terraform taint

terraform.sh taint [options] name

terraform version

terraform.sh version

alternative usage

docker run -it --rm maddinek/terraform [--version] [--help] <command> [<args>]
docker run -it --rm -v /etc/ssl/certs:/etc/ssl/certs:ro --net=host maddinek/terraform [--version] [--help] <command> [<args>]