doks-harbor

colinwilson/doks-harbor/digitalocean

Terraform Module HCL DIGITALOCEAN

High Availability Harbor on DOKS (Kubernetes on DigitalOcean) via Terraform [WIP]

Install
module "doks-harbor" {
source = "colinwilson/doks-harbor/digitalocean"
version = "0.1.3"
}
plain text: /constructs/tfmod-colinwilson-doks-harbor-digitalocean/install.txt
⭐ Source on GitHub 📦 Registry page
README

Terraform Module - High Availability Harbor on DOKS (DigitalOcean Kubernetes) A Terraform module to provision a highly available Harbor Container Registry on a DigitalOcean Kubernetes cluster (DOKS). (Part of the DigitalOcean Kubernetes Challange 2021) ![](https://res.cloudinary.com/qunux/image/upload/v1639236111/harbor_portal_login_screenshot_2021-12-11_eymdvp.png) Features [x] Deploy a highly available Harbor Container Registry on a DigitalOcean Kubernetes Cluster (DOKS). [x] DigitalOcean managed PostgreSQL (v13) & Redis (v6) Clusters auto-provisioned and configured. [x] Spaces (S3 API compatible) bucket provisioned for image, chart, and job log storage. [x] Option to use existing Postgres & Redis clusters. [x] Harbor exposed by ClusterIP (default). [x] Expose Harbor by Ingress configure

Inputs (21)
NameTypeDescriptionDefault
doks_cluster_namestringDOKS cluster name required
spaces_access_idstringDigitalOcean Spaces Access ID required
spaces_secret_keystringDigitalOcean Spaces Secret Key required
postgres_cluster_namestringName of the existing Postgres Database Cluster""
harbor_namespacestringNamespace in which to deploy Harbor"harbor"
harbor_chart_versionstringHarbor Helm chart version to install"1.8.1"
values_filestringName of the custom chart values file to use"values.yaml"
harbor_cert_cnstringCommon name for the automatically generated Harbor TLS cert"local"
database_node_count_redisnumberNumber of nodes that comprise the Redis database cluster1
redis_cluster_namestringName of the existing Redis Database Cluster""
harbor_admin_passwordstringThe initial password of the Harbor admin"Harbor12345"
harbor_tls_secret_namestringThe name of the TLS secret""
harbor_ext_urlstringSet Harbor's external URL"local"
database_size_pgstringDatabase Droplet size associated with the Postgres cluster (ex. db-s-1vcpu-1gb)"db-s-1vcpu-1gb"
harbor_chart_timeout_secondsnumber800
harbor_expose_typestringSet the method by which to expose the Harbor service."clusterip"
harbor_tls_notary_secret_namestringThe name of the Notary TLS secret""
firewall_databasesboolFirewall both Postgres and Redis databases. Connections permitted from the specitrue
database_user_pgstringPostgres database user name."harbor"
database_node_count_pgnumberNumber of nodes that comprise the Postgres database cluster1
database_size_redisstringDatabase Droplet size associated with the Redis cluster (ex. db-s-1vcpu-1gb)"db-s-1vcpu-1gb"
Resources (7)
digitalocean_database_clusterdigitalocean_database_dbdigitalocean_database_firewalldigitalocean_database_userdigitalocean_spaces_buckethelm_releaserandom_id
Details
FrameworkTerraform Module
LanguageHCL
Version0.1.3
Cloud DIGITALOCEAN
★ Stars5
Forks1
Total downloads568
Inputs21
Resources7
Examples2
LicenseMIT
Namespacecolinwilson
Updated