Skip to content

minaeakhalil/docker-terraform

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

31 Commits
 
 
 
 
 
 

Repository files navigation

Docker for Terraform

This project intends to provide a streamlined execution of Terrafrom commands especially when using AWS Role Assumption. Using this Docker container would provide a wrapper for Terraform CLI tools; in other words, any Terraform commands are a valid commands while using this container.

Table of Contents

Quick References

How to use

With AWS Assume Role

$ docker run --rm -v "$PWD":/terraform-src \
    -e AWS_ACCESS_KEY_ID="YOUR_AWS_ACCESS_KEY_ID" \
    -e AWS_SECRET_ACCESS_KEY="YOUR_AWS_SECRET_ACCESS_KEY" \
    -e AWS_ROLE_ARN="YOUR_AWS_ROLE_ARN" \
    -e TERRAFORM_WORKSPACE="WORKSPACE_NAME" \
    minakhalil/docker-terraform terraform plan

Without AWS Assume Role

$ docker run --rm -v "$PWD":/terraform-src \
    -e AWS_ACCESS_KEY_ID="YOUR_AWS_ACCESS_KEY_ID" \
    -e AWS_SECRET_ACCESS_KEY="YOUR_AWS_SECRET_ACCESS_KEY" \
    minakhalil/docker-terraform terraform plan

Additional Examples

  1. Creating new Worksapce
$ docker run --rm -v "$PWD":/terraform-src \
    -e AWS_ACCESS_KEY="YOUR_AWS_ACCESS_KEY_ID" \
    -e AWS_SECRET_ACCESS_KEY="YOUR_AWS_SECRET_ACCESS_KEY" \
    minakhalil/docker-terraform terraform workspace new WORKSPACE_NAME
  1. Applying Terraform changes
$ docker run --rm -v "$PWD":/terraform-src \
    -e AWS_ACCESS_KEY="YOUR_AWS_ACCESS_KEY_ID" \
    -e AWS_SECRET_ACCESS_KEY="YOUR_AWS_SECRET_ACCESS_KEY" \
    minakhalil/docker-terraform terraform apply -auto-approve
  1. Destroying Terraform stack
$ docker run --rm -v "$PWD":/terraform-src \
    -e AWS_ACCESS_KEY="YOUR_AWS_ACCESS_KEY_ID" \
    -e AWS_SECRET_ACCESS_KEY="YOUR_AWS_SECRET_ACCESS_KEY" \
    minakhalil/docker-terraform terraform destroy -auto-approve

About

No description or website provided.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors