This repository has been archived on 2024-11-12. You can view files and clone it, but cannot push or open issues or pull requests.
iac/video-bucket.tf
Matthew Baggett f23b6fbb2f
Some checks failed
Trunk Check / Trunk Check Runner (push) Failing after 5s
Parking netbox for the night
2024-07-04 02:04:32 +02:00

51 lines
1.5 KiB
HCL

data "docker_registry_image" "video_bucket" {
name = "ghcr.io/matthewbaggett/bucket-serve:latest"
}
resource "docker_service" "video_bucket" {
name = "video-bucket"
task_spec {
container_spec {
image = "${data.docker_registry_image.video_bucket.name}@${data.docker_registry_image.video_bucket.sha256_digest}"
configs {
config_id = docker_config.video_bucket_config.id
config_name = docker_config.video_bucket_config.name
file_name = "/app/.env"
}
}
networks_advanced {
name = docker_network.loadbalancer.id
}
restart_policy {
condition = "any"
delay = "0s"
window = "0s"
}
}
}
locals {
video_bucket_config = <<EOF
S3_ENDPOINT=http://s3.california.ti
S3_BUCKET=video
S3_KEY=Ipi5Xh1b2UgcGiLSLLpQ
S3_SECRET=E4xMwB44MT4tGLStJnZTwQbuDNHL1KR9M4I8taBT
EOF
}
resource "docker_config" "video_bucket_config" {
name = "video_bucket_config_${substr(md5(local.video_bucket_config), 0, 7)}"
data = base64encode(local.video_bucket_config)
lifecycle {
ignore_changes = [name]
create_before_destroy = true
}
}
module "videobucket_nginx_config" {
# tflint-ignore: terraform_module_pinned_source
source = "git::https://code.techinc.nl/grey/terraform-nginx.git//nginx-site-available"
hostname = "video.california.ti"
//certificate = acme_certificate.ooo_grey["s3"]
service_name = docker_service.video_bucket.name
upstream_host = "${docker_service.video_bucket.name}:80"
config_prefix = "nginx"
allow_non_ssl = true
allow_ssl = false
}