Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
14 changes: 11 additions & 3 deletions Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -30,18 +30,26 @@ RUN curl -L "https://github.com/gruntwork-io/terragrunt/releases/download/${TERR
chmod +x "${BINARY_NAME}" && \
mv "${BINARY_NAME}" /usr/local/bin/terragrunt

# Terraform installation
# Terraform installation
RUN curl -L "https://releases.hashicorp.com/terraform/${TF_VERSION}/terraform_${TF_VERSION}_${OS}_${ARCH}.zip" -o terraform.zip && \
unzip terraform.zip && \
mv terraform /usr/local/bin/ && \
rm terraform.zip && \
chmod +x /usr/local/bin/terraform

# Hashicorp Vault installation
# Hashicorp Vault installation
RUN wget -O - https://apt.releases.hashicorp.com/gpg | gpg --dearmor -o /usr/share/keyrings/hashicorp-archive-keyring.gpg && \
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/hashicorp-archive-keyring.gpg] https://apt.releases.hashicorp.com $(grep -oP '(?<=UBUNTU_CODENAME=).*' /etc/os-release || lsb_release -cs) main" | tee /etc/apt/sources.list.d/hashicorp.list && \
apt update && apt -y install vault

# Injecting python modules
# Injecting python modules
RUN pipx install --include-deps ansible && \
pipx inject ansible requests pytz

# Gitlab CLI
RUN curl -L "https://gitlab.com/api/v4/projects/gitlab-org%2Fcli/packages/generic/glab/1.117.0/glab_1.117.0_${OS}_${ARCH}.deb" -o glab.deb && \
dpkg -i glab.deb && \
rm -f glab.deb

# Github CLI
RUN curl -sS https://webi.sh/gh | sh
6 changes: 6 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,8 @@ This Docker image is based on Ubuntu 24.04 and includes popular IAC tools common
- **Terragrunt** - Terraform wrapper for managing multiple environments
- **Ansible** - Configuration management and automation tool
- **Vault** - Hashicorp vault binary
- **GitLab CLI (glab)** - Command line interface for GitLab
- **GitHub CLI (gh)** - Command line interface for GitHub

## Included Tools

Expand All @@ -19,6 +21,8 @@ This Docker image is based on Ubuntu 24.04 and includes popular IAC tools common
| Terragrunt | v0.77.22 | Thin wrapper for Terraform that provides extra tools for working with multiple Terraform modules |
| Ansible | Latest | Automation platform for configuration management, application deployment, and task automation |
| vault | Latest | Hashicorp vault client for managing vault resources |
| glab | 1.117.0 | GitLab CLI for managing merge requests, pipelines, issues and repositories from the terminal |
| gh | Latest | GitHub CLI for managing pull requests, issues, releases and repositories from the terminal |

## Additional Packages

Expand Down Expand Up @@ -56,6 +60,8 @@ docker run -it --rm -v $(pwd):/workspace -w /workspace iac-tools:latest /bin/bas
docker run --rm -v $(pwd):/workspace -w /workspace iac-tools:latest terraform --version
docker run --rm -v $(pwd):/workspace -w /workspace iac-tools:latest terragrunt --version
docker run --rm -v $(pwd):/workspace -w /workspace iac-tools:latest ansible --version
docker run --rm -v $(pwd):/workspace -w /workspace iac-tools:latest glab --version
docker run --rm -v $(pwd):/workspace -w /workspace iac-tools:latest gh --version
```

### Docker Compose
Expand Down
Loading