Give operator Docker a writable config

This commit is contained in:
Mikei386
2026-08-25 10:23:11 +02:00
parent b588e0eb0c
commit 221f88c939
2 changed files with 9 additions and 3 deletions
+1 -1
View File
@@ -191,7 +191,7 @@ services:
build:
context: .
dockerfile: Dockerfile.athena-operator
image: mike-ai/mcp-athena-operator:2.3.1
image: mike-ai/mcp-athena-operator:2.3.2
container_name: mike-ai-mcp-athena-operator
environment:
ATHENA_OPERATOR_SOCKET: /operator/operator.sock
+8 -2
View File
@@ -28,7 +28,7 @@ from pathlib import Path
from typing import Any
VERSION = "2.3.1"
VERSION = "2.3.2"
STACK = Path(os.environ.get("ATHENA_OPERATOR_STACK", "/opt/mike-ai/stack")).resolve()
REPOSITORY = Path(os.environ.get("ATHENA_OPERATOR_REPOSITORY", "/data/mike-ai-operator/repository")).resolve()
STATE = Path(os.environ.get("ATHENA_OPERATOR_STATE", "/data/mike-ai-operator/state")).resolve()
@@ -102,10 +102,16 @@ def compact(text: str) -> str:
def run(argv: list[str], *, cwd: Path = STACK, timeout: int = 900, check: bool = False) -> dict[str, Any]:
# The systemd service deliberately exposes /root read-only. Docker Buildx
# still needs a tiny writable activity/config directory, so keep that
# disposable state inside the operator's dedicated state tree.
docker_config = STATE / "docker-config"
docker_config.mkdir(parents=True, exist_ok=True)
environment = {
"PATH": "/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin",
"LANG": "C.UTF-8",
"HOME": "/root",
"HOME": str(STATE),
"DOCKER_CONFIG": str(docker_config),
}
git_key = Path(os.environ.get("ATHENA_OPERATOR_GIT_SSH_KEY", "/etc/mike-ai/athena-operator-git"))
known_hosts = Path(os.environ.get("ATHENA_OPERATOR_GIT_KNOWN_HOSTS", "/etc/mike-ai/athena-operator-known-hosts"))