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

52 lines
1.5 KiB
Terraform
Raw Normal View History

2024-07-03 16:26:44 +00:00
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 {
2024-07-03 23:10:04 +00:00
config_id = docker_config.video_bucket_config.id
2024-07-03 16:26:44 +00:00
config_name = docker_config.video_bucket_config.name
2024-07-03 23:10:04 +00:00
file_name = "/app/.env"
2024-07-03 16:26:44 +00:00
}
}
networks_advanced {
name = docker_network.loadbalancer.id
}
restart_policy {
condition = "any"
delay = "0s"
window = "0s"
}
}
}
2024-07-03 23:10:04 +00:00
locals {
video_bucket_config = <<EOF
2024-07-03 16:26:44 +00:00
S3_ENDPOINT=http://s3.california.ti
S3_BUCKET=video
S3_KEY=Ipi5Xh1b2UgcGiLSLLpQ
S3_SECRET=E4xMwB44MT4tGLStJnZTwQbuDNHL1KR9M4I8taBT
EOF
}
resource "docker_config" "video_bucket_config" {
2024-07-03 23:10:04 +00:00
name = "video_bucket_config_${substr(md5(local.video_bucket_config), 0, 7)}"
2024-07-03 16:26:44 +00:00
data = base64encode(local.video_bucket_config)
2024-07-04 00:04:32 +00:00
lifecycle {
ignore_changes = [name]
create_before_destroy = true
}
2024-07-03 16:26:44 +00:00
}
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
}