docker-server

4ops/docker-server/digitalocean

Terraform Module HCL DIGITALOCEAN

Creates docker server with network policy and with/without data volume in DigitalOcean

Install
module "docker-server" {
source = "4ops/docker-server/digitalocean"
version = "1.0.0"
}
plain text: /constructs/tfmod-4ops-docker-server-digitalocean/install.txt
⭐ Source on GitHub 📦 Registry page
README

Docker server - Creates virtual server(s) with docker - Creates cloud volume(s) and mount to /srv - Auto resize fs on data volume when size of volume changed - Register server(s) in domain var.domain - Creates cloud firewall and apply network policy to server(s) - Create var.provisioner user Cloud resources - DigitalOcean droplet - DigitalOcean volume - DigitalOcean cloud firewall Default firewall rules Incoming - Allow SSH from var.trusted_sources - Allow icmp from world Outgoing - Allow tcp to world - Allow udp to world - Allow icmp to world

Inputs (18)
NameTypeDescriptionDefault
regionstringRequired. DigitalOcean region for droplet creation. required
trusted_sourceslist(string)Required. IP list to allow SSH and bitcoin rpc connections from. required
domain_ttlnumberTTL in seconds for domain records. 300
monitoringboolEnable DigitalOcean monitoring. true
provisioner_usernamestringThis user will be added and used inside this module only. "provisioner"
backupsboolEnable backups feature for droplet. false
volume_sizenumberSize of data volume in gigabytes. If zero, no volume will be created. 0
namestringName of service. Used as name prefix when generating hostnames. "bitcoin"
random_idboolAppends random id to droplet's name if `true`. true
resize_diskboolControlling whether to increase the disk size when resizing a Droplet. When set false
provisioner_homedirstringHome directory of `provisioner_username`. "/home/provisioner"
ssh_keyslist(number)List of SSH keys registered in DigitalOcean. User `root` authorized with this ke[]
tagslistList of existing tags for droplet. []
sizestringSize of droplet. "s-1vcpu-1gb"
serversnumberCount of servers to create. 1
domainstringDomain name. Host will be registered in this domain if non-empty value assigned.""
ipv6boolEnable IPv6 address on droplet. false
private_networkingboolEnable DigitalOcean private networking. true
Outputs (7)
fqdn
private_key
public_key
ipv4
ipv4_private
ipv6
name
Resources (6)
digitalocean_dropletdigitalocean_firewalldigitalocean_recorddigitalocean_volumenull_resourcetls_private_key
Details
FrameworkTerraform Module
LanguageHCL
Version1.0.0
Cloud DIGITALOCEAN
★ Stars0
Forks2
Total downloads1.1k
Inputs18
Outputs7
Resources6
LicenseMIT
Namespace4ops
Updated