IPV6 tryout

This commit is contained in:
Marc Fokkert
2025-04-30 13:56:49 +02:00
parent c1980a6afa
commit 51cf450411
12 changed files with 148 additions and 6 deletions

View File

@@ -0,0 +1,35 @@
data "docker_registry_image" "ollama" {
name = "ollama/ollama"
}
resource "docker_image" "ollama" {
name = data.docker_registry_image.ollama.name
pull_triggers = [data.docker_registry_image.ollama.sha256_digest]
}
resource "docker_network" "ollama" {
name = "ollama"
}
resource "docker_container" "ollama" {
image = docker_image.ollama.image_id
name = "ollama"
restart = "always"
mounts {
target = "/root/.ollama"
source = "/mnt/appdata/ollama"
type = "bind"
}
networks_advanced {
name = docker_network.ollama.name
}
lifecycle {
ignore_changes = [
ulimit,
log_opts
]
}
}

View File

@@ -0,0 +1,41 @@
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_container" "open-webui" {
image = docker_image.open-webui.image_id
name = "open-webui"
restart = "always"
env = [
"OLLAMA_BASE_URL=http://ollama:11434"
]
mounts {
target = "/app/backend/data"
source = "/var/lib/containers/open-webui"
type = "bind"
}
networks_advanced {
name = docker_network.ollama.name
}
networks_advanced {
name = docker_network.container-public.name
ipv4_address = "192.168.3.14"
}
lifecycle {
ignore_changes = [
ulimit,
log_opts
]
}
}

View File

@@ -1,6 +1,6 @@
docker ^ docker ^
--tlsverify ^ --tlsverify ^
-H=127.0.0.1:3000 ^ -H=172.20.0.207:2375 ^
--tlscacert=.docker\ca.pem ^ --tlscacert=.docker\ca.pem ^
--tlscert=.docker\cert.pem ^ --tlscert=.docker\cert.pem ^
--tlskey=.docker\key.pem %* --tlskey=.docker\key.pem %*

View File

@@ -8,7 +8,7 @@ terraform {
} }
provider "docker" { provider "docker" {
#host = "tcp://127.0.0.1:3000" # host = "tcp://127.0.0.1:3000"
host = "tcp://172.20.0.207:2375" host = "tcp://172.20.0.207:2375"
cert_path = pathexpand(".docker") cert_path = pathexpand(".docker")
@@ -28,6 +28,21 @@ resource "docker_network" "container-public" {
} }
} }
resource "docker_network" "ipv6-slaac" {
name = "ipv6-slaac"
ipv6 = true
ipam_config {
aux_address = {}
subnet = "2a02:a470:b12a:2::/64"
}
ipam_config {
gateway = "192.168.32.1"
subnet = "192.168.32.0/20"
}
}
resource "docker_volume" "truenas-photoprism-originals" { resource "docker_volume" "truenas-photoprism-originals" {
name = "truenas-photoprism-originals" name = "truenas-photoprism-originals"
driver_opts = { driver_opts = {

48
core-os-podman/readme.md Normal file
View File

@@ -0,0 +1,48 @@
# Update docker ipv4 network
Stop all pods
```
docker stop $(docker ps -a -q)
```
Remove network
`docker network rm container-public`
create new network
```
docker network create -d macvlan \
--subnet=192.168.3.0/24 \
--gateway=192.168.3.1 \
--ip-range=192.168.3.128/25 \
-o parent=ens19 \
container-public
```
Rest tofu
```
tofu state rm docker_network.container-public
tofu import docker_network.container-public 276dec3b3e8d82e465c2e47b5c8d8ccb439c608c5665094a3735849e7b8b9742
```
# Update docker ipv6 network
Cleanup
```
docker stop $(docker ps -a -q)
docker network rm ipv6-slaac
```
Initialize
```
docker network create -d ipvlan \
--subnet=2a02:a470:b12a:2::/64 \
--ipv6 \
-o parent=ens19 \
-o ipvlan_mode=l2 \
ipv6-slaac
```
Tofu
```
tofu state rm docker_network.ipv6-slaac
tofu import docker_network.ipv6-slaac d3b368472fb140224858725c8b5ba88ede8f6666464d3b05ffc957415404b3a3
```

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long