rss-bridge: Migrate to container module
This commit is contained in:
parent
9a5bf0a8b9
commit
ebe3ecbd9e
7
main.tf
7
main.tf
|
@ -61,13 +61,6 @@ module "radicale" {
|
||||||
traefik-network-id = "${module.docker.traefik-network-id}"
|
traefik-network-id = "${module.docker.traefik-network-id}"
|
||||||
}
|
}
|
||||||
|
|
||||||
module "rss-bridge" {
|
|
||||||
source = "rss-bridge"
|
|
||||||
domain = "rss-bridge.bb8.fun"
|
|
||||||
traefik-labels = "${var.traefik-common-labels}"
|
|
||||||
traefik-network-id = "${module.docker.traefik-network-id}"
|
|
||||||
}
|
|
||||||
|
|
||||||
module "resilio" {
|
module "resilio" {
|
||||||
source = "resilio"
|
source = "resilio"
|
||||||
domain = "sync.bb8.fun"
|
domain = "sync.bb8.fun"
|
||||||
|
|
|
@ -21,6 +21,7 @@ resource "docker_container" "container" {
|
||||||
memory = "${local.resource["memory"]}"
|
memory = "${local.resource["memory"]}"
|
||||||
|
|
||||||
volumes = "${var.volumes}"
|
volumes = "${var.volumes}"
|
||||||
|
upload = "${var.uploads}"
|
||||||
|
|
||||||
# Look at this monstrosity
|
# Look at this monstrosity
|
||||||
# And then https://github.com/hashicorp/terraform/issues/12453#issuecomment-365569618
|
# And then https://github.com/hashicorp/terraform/issues/12453#issuecomment-365569618
|
||||||
|
|
|
@ -88,3 +88,9 @@ variable "volumes" {
|
||||||
type = "list"
|
type = "list"
|
||||||
default = []
|
default = []
|
||||||
}
|
}
|
||||||
|
|
||||||
|
variable "uploads" {
|
||||||
|
description = "uploads"
|
||||||
|
type = "list"
|
||||||
|
default = []
|
||||||
|
}
|
||||||
|
|
|
@ -0,0 +1,35 @@
|
||||||
|
module "rss-bridge" {
|
||||||
|
name = "rss-bridge"
|
||||||
|
source = "modules/container"
|
||||||
|
image = "rssbridge/rss-bridge:latest"
|
||||||
|
|
||||||
|
web {
|
||||||
|
expose = true
|
||||||
|
host = "rss-bridge.${var.root-domain}"
|
||||||
|
}
|
||||||
|
|
||||||
|
networks = "${list(module.docker.traefik-network-id)}"
|
||||||
|
|
||||||
|
uploads = [{
|
||||||
|
content = <<EOF
|
||||||
|
AmazonBridge
|
||||||
|
BandcampBridge
|
||||||
|
ContainerLinuxReleasesBridge
|
||||||
|
DiscogsBridge
|
||||||
|
FDroidBridge
|
||||||
|
FacebookBridge
|
||||||
|
GithubIssueBridge
|
||||||
|
GithubSearchBridge
|
||||||
|
GoComicsBridge
|
||||||
|
GoogleSearchBridge
|
||||||
|
InstagramBridge
|
||||||
|
ReadComicsBridge
|
||||||
|
SoundcloudBridge
|
||||||
|
SteamBridge
|
||||||
|
StripeAPIChangeLogBridge
|
||||||
|
AmazonPriceTrackerBridge
|
||||||
|
EOF
|
||||||
|
|
||||||
|
file = "/app/public/whitelist.txt"
|
||||||
|
}]
|
||||||
|
}
|
|
@ -1,30 +0,0 @@
|
||||||
data "docker_registry_image" "rss-bridge" {
|
|
||||||
name = "rssbridge/rss-bridge:latest"
|
|
||||||
}
|
|
||||||
|
|
||||||
resource "docker_image" "rss-bridge" {
|
|
||||||
name = "${data.docker_registry_image.rss-bridge.name}"
|
|
||||||
pull_triggers = ["${data.docker_registry_image.rss-bridge.sha256_digest}"]
|
|
||||||
}
|
|
||||||
|
|
||||||
resource "docker_container" "rss-bridge" {
|
|
||||||
name = "rss-bridge"
|
|
||||||
image = "${docker_image.rss-bridge.latest}"
|
|
||||||
|
|
||||||
labels = "${merge(
|
|
||||||
var.traefik-labels, map(
|
|
||||||
"traefik.port", 80,
|
|
||||||
"traefik.frontend.rule","Host:${var.domain}"
|
|
||||||
))}"
|
|
||||||
|
|
||||||
upload {
|
|
||||||
content = "${file("${path.module}/whitelist.txt")}"
|
|
||||||
file = "/app/public/whitelist.txt"
|
|
||||||
}
|
|
||||||
|
|
||||||
networks = ["${var.traefik-network-id}"]
|
|
||||||
|
|
||||||
restart = "unless-stopped"
|
|
||||||
destroy_grace_seconds = 60
|
|
||||||
must_run = true
|
|
||||||
}
|
|
|
@ -1,9 +0,0 @@
|
||||||
variable "domain" {
|
|
||||||
description = "domain to be used by traefik"
|
|
||||||
}
|
|
||||||
|
|
||||||
variable "traefik-labels" {
|
|
||||||
type = "map"
|
|
||||||
}
|
|
||||||
|
|
||||||
variable "traefik-network-id" {}
|
|
|
@ -1,16 +0,0 @@
|
||||||
AmazonBridge
|
|
||||||
BandcampBridge
|
|
||||||
ContainerLinuxReleasesBridge
|
|
||||||
DiscogsBridge
|
|
||||||
FDroidBridge
|
|
||||||
FacebookBridge
|
|
||||||
GithubIssueBridge
|
|
||||||
GithubSearchBridge
|
|
||||||
GoComicsBridge
|
|
||||||
GoogleSearchBridge
|
|
||||||
InstagramBridge
|
|
||||||
ReadComicsBridge
|
|
||||||
SoundcloudBridge
|
|
||||||
SteamBridge
|
|
||||||
StripeAPIChangeLogBridge
|
|
||||||
AmazonPriceTrackerBridge
|
|
Loading…
Reference in New Issue