Add borg, crawl4ai en open-webui
This commit is contained in:
@@ -0,0 +1,44 @@
|
||||
|
||||
data "docker_registry_image" "borg" {
|
||||
name = "pschiffe/borg:latest"
|
||||
}
|
||||
|
||||
resource "docker_image" "borg" {
|
||||
name = data.docker_registry_image.borg.name
|
||||
pull_triggers = [data.docker_registry_image.borg.sha256_digest]
|
||||
}
|
||||
|
||||
|
||||
resource "docker_container" "borg" {
|
||||
image = docker_image.borg.image_id
|
||||
name = "borg"
|
||||
restart = "always"
|
||||
|
||||
env = [
|
||||
"BORG_REPO=/borg/repo"
|
||||
]
|
||||
|
||||
mounts {
|
||||
target = "/root"
|
||||
source = "/var/lib/containers/borg/config"
|
||||
type = "bind"
|
||||
}
|
||||
|
||||
volumes {
|
||||
container_path = "/borg/repo"
|
||||
volume_name = docker_volume.truenas-borg.name
|
||||
}
|
||||
|
||||
|
||||
lifecycle {
|
||||
ignore_changes = [
|
||||
ulimit,
|
||||
log_opts
|
||||
]
|
||||
}
|
||||
|
||||
networks_advanced {
|
||||
name = docker_network.container-public.name
|
||||
ipv4_address = "192.168.3.56"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,35 @@
|
||||
data "docker_registry_image" "crawl4ai" {
|
||||
name = "unclecode/crawl4ai:latest"
|
||||
}
|
||||
|
||||
resource "docker_image" "crawl4ai" {
|
||||
name = data.docker_registry_image.crawl4ai.name
|
||||
pull_triggers = [data.docker_registry_image.crawl4ai.sha256_digest]
|
||||
}
|
||||
|
||||
resource "docker_container" "crawl4ai" {
|
||||
image = docker_image.crawl4ai.image_id
|
||||
name = "crawl4ai"
|
||||
hostname = "crawl4ai"
|
||||
restart = "always"
|
||||
|
||||
memory = 2000
|
||||
memory_swap = 2000
|
||||
|
||||
log_driver = "local"
|
||||
|
||||
env = [
|
||||
|
||||
]
|
||||
|
||||
networks_advanced {
|
||||
name = docker_network.ai.name
|
||||
}
|
||||
|
||||
lifecycle {
|
||||
ignore_changes = [
|
||||
ulimit,
|
||||
log_opts
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,49 @@
|
||||
data "docker_registry_image" "open-webui" {
|
||||
name = "ghcr.io/open-webui/open-webui:main"
|
||||
}
|
||||
|
||||
resource "docker_image" "open-webui" {
|
||||
name = data.docker_registry_image.open-webui.name
|
||||
pull_triggers = [data.docker_registry_image.open-webui.sha256_digest]
|
||||
}
|
||||
|
||||
resource "docker_network" "ai" {
|
||||
name = "ai"
|
||||
}
|
||||
resource "docker_container" "open-webui" {
|
||||
image = docker_image.open-webui.image_id
|
||||
name = "open-webui"
|
||||
restart = "always"
|
||||
|
||||
memory = 2000
|
||||
memory_swap = 2000
|
||||
|
||||
log_driver = "local"
|
||||
|
||||
env = [
|
||||
"ENABLE_OPENAI_API=true",
|
||||
"OPENAI_API_BASE_URL=http://172.20.0.51:1234/v1"
|
||||
]
|
||||
|
||||
mounts {
|
||||
target = "/app/backend/data"
|
||||
source = "/var/lib/containers/open-webui"
|
||||
type = "bind"
|
||||
}
|
||||
|
||||
networks_advanced {
|
||||
name = docker_network.container-public.name
|
||||
ipv4_address = "192.168.3.14"
|
||||
}
|
||||
|
||||
networks_advanced {
|
||||
name = docker_network.ai.name
|
||||
}
|
||||
|
||||
lifecycle {
|
||||
ignore_changes = [
|
||||
ulimit,
|
||||
log_opts
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -137,4 +137,13 @@ resource "docker_volume" "truenas-cache" {
|
||||
device = "//172.20.0.188/docker-app-cache"
|
||||
o = "username=dqnap,password=vPKnUmApyQRE5$n,file_mode=0777,dir_mode=0777"
|
||||
}
|
||||
}
|
||||
|
||||
resource "docker_volume" "truenas-borg" {
|
||||
name = "truenas-borg"
|
||||
driver_opts = {
|
||||
type = "cifs",
|
||||
device = "//172.20.0.188/borg"
|
||||
o = "username=dqnap,password=vPKnUmApyQRE5$n,file_mode=0777,dir_mode=0777"
|
||||
}
|
||||
}
|
||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
Reference in New Issue
Block a user