data "docker_registry_image" "hoarder" { name = "ghcr.io/hoarder-app/hoarder" } resource "docker_image" "hoarder" { name = data.docker_registry_image.hoarder.name pull_triggers = [data.docker_registry_image.hoarder.sha256_digest] } data "docker_registry_image" "hoarder-chrome" { name = "gcr.io/zenika-hub/alpine-chrome:123" } resource "docker_image" "hoarder-chrome" { name = data.docker_registry_image.hoarder-chrome.name pull_triggers = [data.docker_registry_image.hoarder-chrome.sha256_digest] } data "docker_registry_image" "hoarder-meilisearch" { name = "getmeili/meilisearch:v1.6" } resource "docker_image" "hoarder-meilisearch" { name = data.docker_registry_image.hoarder-meilisearch.name pull_triggers = [data.docker_registry_image.hoarder-meilisearch.sha256_digest] } resource "docker_network" "hoarder" { name = "hoarder" } resource "docker_container" "hoarder" { image = docker_image.hoarder.image_id name = "hoarder" hostname = "hoarder" env = [ "MEILI_ADDR=http://meilisearch:7700", "BROWSER_WEB_URL=http://chrome:9222", "HOARDER_VERSION=release", "NEXTAUTH_SECRET=j&natTM8L8u$&z", "MEILI_MASTER_KEY=GM4ysMegcCoZUOrVxglbWzGJeN9O7CMWnZIaG9c_MSQ", "NEXTAUTH_URL=https://hoarder.rescla.me", "DATA_DIR=/data", "DISABLE_SIGNUPS=true", "OPENAI_API_KEY=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" ] mounts { target = "/data" source = "/share/appdata/hoarder" type = "bind" } restart = "always" networks_advanced { name = docker_network.bridge.name ipv4_address = "192.168.2.145" } networks_advanced { name = docker_network.hoarder.name } lifecycle { ignore_changes = [ ulimit, log_opts ] } } resource "docker_container" "hoarder-chrome" { image = docker_image.hoarder-chrome.image_id name = "hoarder-chrome" hostname = "chrome" command = [ "--no-sandbox", "--disable-gpu", "--disable-dev-shm-usage", "--remote-debugging-address=0.0.0.0", "--remote-debugging-port=9222", "--hide-scrollbars" ] restart = "always" networks_advanced { name = docker_network.hoarder.name } lifecycle { ignore_changes = [ ulimit, log_opts ] } } resource "docker_container" "hoarder-meilisearch" { image = docker_image.hoarder-meilisearch.image_id name = "hoarder-meilisearch" hostname = "meilisearch" env = [ "MEILI_ADDR=http://meilisearch:7700", "HOARDER_VERSION=release", "NEXTAUTH_SECRET=j&natTM8L8u$&z", "MEILI_MASTER_KEY=GM4ysMegcCoZUOrVxglbWzGJeN9O7CMWnZIaG9c_MSQ", "NEXTAUTH_URL=https://hoarder.rescla.me", "MEILI_NO_ANALYTICS=true" ] restart = "always" mounts { target = "/meili_data" source = "/share/appdata/hoarder-meilisearch" type = "bind" } networks_advanced { name = docker_network.hoarder.name } lifecycle { ignore_changes = [ ulimit, log_opts ] } }