Compare commits

..

1 commit

Author SHA1 Message Date
Agent
693ab2d9e6 fix: [nomad-step-5] S5-fix-5 — chat.hcl tmpfs syntax: use mount block not tmpfs argument (#1012)
Some checks failed
ci/woodpecker/push/ci Pipeline was successful
ci/woodpecker/push/nomad-validate Pipeline failed
ci/woodpecker/pr/ci Pipeline was successful
ci/woodpecker/pr/nomad-validate Pipeline failed
ci/woodpecker/pr/secret-scan Pipeline was successful
2026-04-18 12:32:47 +00:00

View file

@ -89,19 +89,26 @@ job "chat" {
config { config {
image = "disinto/chat:local" image = "disinto/chat:local"
force_pull = false force_pull = false
# Sandbox hardening (#706):
# - cap_drop ALL (no Linux capabilities)
# - tmpfs /tmp for runtime files (64MB)
# - pids_limit 128 (prevent fork bombs)
# ReadonlyRootfs enforced via entrypoint script (fails if running as root) # ReadonlyRootfs enforced via entrypoint script (fails if running as root)
# Security options: # Security options for sandbox hardening
# - apparmor=unconfined for Claude CLI ptrace access # apparmor=unconfined needed for Claude CLI ptrace access
# - no-new-privileges prevents privilege escalation # no-new-privileges prevents privilege escalation
security_opt = ["apparmor=unconfined", "no-new-privileges"]
}
# Sandbox hardening (#706)
# cap_drop ALL (no Linux capabilities)
# tmpfs /tmp for runtime files (64MB)
# pids_limit 128 (prevent fork bombs)
cap_drop = ["ALL"] cap_drop = ["ALL"]
pids_limit = 128 pids_limit = 128
security_opt = ["apparmor=unconfined", "no-new-privileges"] mount {
# tmpfs mounts via volumes config (Nomad Docker driver) type = "tmpfs"
volumes = ["tmpfs:/tmp:size=64m"] target = "/tmp"
readonly = false
tmpfs_options {
size = 67108864 # 64MB in bytes
}
} }
# Volume mounts # Volume mounts