diff --git a/docker/swarm-exec/inputs.tf b/docker/swarm-exec/inputs.tf new file mode 100644 index 0000000..98798e5 --- /dev/null +++ b/docker/swarm-exec/inputs.tf @@ -0,0 +1,17 @@ +variable "command" { + type = string + description = "The command to run in the container." +} +variable "image" { + type = string + description = "The docker image to use for the swarm-exec service." + default = "mavenugo/swarm-exec:17.03.0-ce" +} +variable "stack_name" { + description = "The name of the collective stack" + type = string +} +variable "service_name" { + description = "The name of the service" + type = string +} \ No newline at end of file diff --git a/docker/swarm-exec/swarm-exec.tf b/docker/swarm-exec/swarm-exec.tf new file mode 100644 index 0000000..f94b42e --- /dev/null +++ b/docker/swarm-exec/swarm-exec.tf @@ -0,0 +1,10 @@ +module "swarm_exec" { + source = "../service" + image = var.image + stack_name = var.stack_name + service_name = var.service_name + mounts = { "/var/run/docker.sock" = "/var/run/docker.sock" } + global = true + one_shot = true + command = ["sh", "-c", var.command] +} diff --git a/docker/swarm-exec/terraform.tf b/docker/swarm-exec/terraform.tf new file mode 100644 index 0000000..0814b57 --- /dev/null +++ b/docker/swarm-exec/terraform.tf @@ -0,0 +1,11 @@ +terraform { + required_version = "~> 1.6" + required_providers { + docker = { + source = "kreuzwerker/docker" + version = "~>3.0" + } + } +} + +