32 lines
1.3 KiB
Plaintext
32 lines
1.3 KiB
Plaintext
# Derived Hermes Agent image with kubectl + helm so the agent can drive the
|
|
# k3s cluster from inside the container (terminal backend = local).
|
|
#
|
|
# Build & push to the Gitea registry:
|
|
# docker build -t git.rogi.casa/roger/hermes-agent:v1.35-1 -f dockerfile .
|
|
# docker push git.rogi.casa/roger/hermes-agent:v1.35-1
|
|
#
|
|
# This image targets linux/amd64 (the agent pod is pinned to the amd64 NUC).
|
|
FROM nousresearch/hermes-agent:latest
|
|
|
|
USER root
|
|
|
|
# kubectl (v1.35 to match the cluster's k3s version)
|
|
RUN apt-get update \
|
|
&& apt-get install -y --no-install-recommends curl gnupg ca-certificates \
|
|
&& curl -fsSL https://pkgs.k8s.io/core:/stable:/v1.35/deb/Release.key \
|
|
| gpg --dearmor -o /usr/share/keyrings/kubernetes-apt-keyring.gpg \
|
|
&& echo 'deb [signed-by=/usr/share/keyrings/kubernetes-apt-keyring.gpg] https://pkgs.k8s.io/core:/stable:/v1.35/deb/ /' \
|
|
> /etc/apt/sources.list.d/kubernetes.list \
|
|
&& apt-get update \
|
|
&& apt-get install -y --no-install-recommends kubectl \
|
|
# helm
|
|
&& curl -fsSL https://get.helm.sh/helm-v3.16.3-linux-amd64.tar.gz \
|
|
| tar -xz -C /usr/local/bin --strip-components=1 linux-amd64/helm \
|
|
&& apt-get clean \
|
|
&& rm -rf /var/lib/apt/lists/*
|
|
|
|
# Hermes' own CLI/kubeconfig helper dir for tool subprocesses
|
|
RUN mkdir -p /opt/data/home/.kube
|
|
|
|
USER hermes
|