IPV6 tryout
This commit is contained in:
35
core-os-podman/_ollama_test/ollama.tf
Normal file
35
core-os-podman/_ollama_test/ollama.tf
Normal 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
|
||||
]
|
||||
}
|
||||
}
|
||||
41
core-os-podman/_ollama_test/open-webui.tf
Normal file
41
core-os-podman/_ollama_test/open-webui.tf
Normal 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
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -1,6 +1,6 @@
|
||||
docker ^
|
||||
--tlsverify ^
|
||||
-H=127.0.0.1:3000 ^
|
||||
-H=172.20.0.207:2375 ^
|
||||
--tlscacert=.docker\ca.pem ^
|
||||
--tlscert=.docker\cert.pem ^
|
||||
--tlskey=.docker\key.pem %*
|
||||
|
||||
@@ -8,7 +8,7 @@ terraform {
|
||||
}
|
||||
|
||||
provider "docker" {
|
||||
#host = "tcp://127.0.0.1:3000"
|
||||
# host = "tcp://127.0.0.1:3000"
|
||||
host = "tcp://172.20.0.207:2375"
|
||||
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" {
|
||||
name = "truenas-photoprism-originals"
|
||||
driver_opts = {
|
||||
|
||||
48
core-os-podman/readme.md
Normal file
48
core-os-podman/readme.md
Normal 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
1
core-os-podman/terraform.tfstate.1745528648.backup
Normal file
1
core-os-podman/terraform.tfstate.1745528648.backup
Normal file
File diff suppressed because one or more lines are too long
1
core-os-podman/terraform.tfstate.1745529679.backup
Normal file
1
core-os-podman/terraform.tfstate.1745529679.backup
Normal file
File diff suppressed because one or more lines are too long
1
core-os-podman/terraform.tfstate.1745605200.backup
Normal file
1
core-os-podman/terraform.tfstate.1745605200.backup
Normal file
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