Skip to content

ehwplus/terraswarm

Repository files navigation

Terraswarm
terraswarm provides advanced Terraform modules
for deploying Docker resources in a Docker Swarm cluster.

Contributing Guidelines · Code of Conduct · Submit an Issue

Overview

Terraswarm is an open-source project aimed at simplifying the deployment of Docker resources using Terraform. Whether you're managing a single-node setup or a large-scale Swarm, Terraswarm equips you with the modules you need to get your infrastructure up and running quickly and efficiently with a high grade of consistency across your resources. This repository makes use of the docker terraform provider by kreuzwerker.

Features

  • Consistent Quality: Ensure a uniform quality standard across all deployments with our Docker resource modules.

  • Stateful Infrastructure Management: Leverage Terraform's planned and stateful management to eliminate manual infrastructure changes.

  • Integrated Deployment: Co-locate your Docker resource creation and service provisioning within your repository for streamlined operations.

Getting started

We use asdf for version locking. See .tool-versions for the tools that are used within this repository.

Make sure to have asdf installed on your system.

Install asdf tools and populate shims

Run

asdf install

in your terminal and add prepend the binaries to your path

export PATH="$HOME/.asdf/shims":"$PATH"

Setup pre-commit

Run asdf exec pre-commit install to install the pre-commit or asdf exec pre-commit run -a to run the pre-commit hook manually.


For more information on Docker Swarm and Terraform, visit their respective official documentation:

Contributing

Please feel free to contribute your own modules. Modules shall be based on top of the base_docker_service and base_docker_volume.

We ❤️ contributions! If you'd like to help improve Terraswarm, please open up a PR.

Made in 🇩🇪 Germany