48 lines
1.5 KiB
Terraform
48 lines
1.5 KiB
Terraform
|
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)
|
||
|
}
|
||
|
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
|
||
|
}
|