Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/damoun/terraform-hetzner-coolify

A terraform module to deploy Coolify on Hetzner Cloud
https://github.com/damoun/terraform-hetzner-coolify

Last synced: about 1 month ago
JSON representation

A terraform module to deploy Coolify on Hetzner Cloud

Awesome Lists containing this project

README

        


terraform-hetzner-coolify


A terraform module to deploy Coolify on Hetzner Cloud.


Requirements
Example
Providers
Modules
Inputs
Outputs
Resources

## Requirements

| Name | Version |
|------|---------|
| [terraform](#requirement\_terraform) | >= 1.8.4 |
| [hcloud](#requirement\_hcloud) | 1.48.0 |

## Example

```hcl
# Example, should give the user an idea about how to use this module.
# This code is found in the examples directory.
terraform {
required_version = ">= 1.8.4"
required_providers {
hcloud = {
source = "hetznercloud/hcloud"
version = "1.47.0"
}
}
}

provider "hcloud" {}

resource "hcloud_ssh_key" "root" {
name = "root"
public_key = file("~/.ssh/id_ed25519.pub")
}

module "coolify" {
source = "../"

providers = {
hcloud = hcloud
}

server_type = "cax11"
location = "nbg1"
ssh_keys = [hcloud_ssh_key.root.id]
}

output "url" {
value = module.coolify.url
}
```

## Providers

| Name | Version |
|------|---------|
| [hcloud](#provider\_hcloud) | 1.48.0 |

## Modules

| Name | Source | Version |
|------|--------|---------|
| [cloudinit](#module\_cloudinit) | damoun/cloudinit/coolify | 1.0.0 |

## Inputs

| Name | Description | Type | Default | Required |
|------|-------------|------|---------|:--------:|
| [firewall\_source\_ips](#input\_firewall\_source\_ips) | Source networks that have access to Coolify. | `list(string)` |

[
"0.0.0.0/0",
"::/0"
]
| no |
| [ipv4\_enabled](#input\_ipv4\_enabled) | Whether the Coolify instance should have a public IPv4 address. | `bool` | `true` | no |
| [location](#input\_location) | The location where the Coolify instance should be created. | `string` | n/a | yes |
| [server\_type](#input\_server\_type) | The server type to use for the Coolify instance. | `string` | n/a | yes |
| [ssh\_keys](#input\_ssh\_keys) | The SSH key IDs to use for the Coolify instance. | `list(string)` | n/a | yes |

## Outputs

| Name | Description |
|------|-------------|
| [ipv4\_address](#output\_ipv4\_address) | The IP of the Coolify instance |
| [ipv6\_address](#output\_ipv6\_address) | The IPv6 of the Coolify instance |
| [url](#output\_url) | The URL of the Coolify instance |

## Resources

| Name | Type |
|------|------|
| [hcloud_firewall.coolify](https://registry.terraform.io/providers/hetznercloud/hcloud/1.48.0/docs/resources/firewall) | resource |
| [hcloud_server.coolify](https://registry.terraform.io/providers/hetznercloud/hcloud/1.48.0/docs/resources/server) | resource |