1b8be63d05
Kea 2.6.5 restricts control/HA unix socket paths to its compiled
runstatedir and rejects any other path by exact string match
("invalid path specified: '/run/kea', supported path is '/var/run/kea'"),
even though /var/run is a symlink to /run. The operator rendered sockets
under /run/kea, so kea-dhcp4 and kea-ctrl-agent crash-looped on startup.
- Point RunDir at /var/run/kea so all derived config/socket paths match.
- Pre-create /var/run/kea in the kea image.
- Assert rendered socket paths live under /var/run/kea.
Claude-Session: https://claude.ai/code/session_01JUoARVdmhxKQHyyyp1pxeT
21 lines
875 B
Docker
21 lines
875 B
Docker
# Kea DHCPv4 workload image (kea-dhcp4 + kea-ctrl-agent + HA/lease hooks).
|
|
# ISC publishes no official Kea container, so we build our own from AlmaLinux,
|
|
# which is already reachable through the artifactapi dockerhub remote
|
|
# (^library/almalinux). The kea packages come from EPEL; the HA hook
|
|
# (libdhcp_ha.so) and lease_cmds hook ship open-source since Kea 2.4.
|
|
#
|
|
# NOTE: this build needs EPEL package access. If the CI build network cannot
|
|
# reach EPEL mirrors, add an artifactapi rpm remote for EPEL (see repo README
|
|
# follow-ups) and point dnf at it.
|
|
FROM almalinux:9
|
|
|
|
RUN dnf -y install epel-release \
|
|
&& dnf -y install kea kea-hooks \
|
|
&& dnf clean all \
|
|
&& rm -rf /var/cache/dnf \
|
|
&& mkdir -p /var/run/kea
|
|
|
|
EXPOSE 67/udp 8000/tcp
|
|
# Command is supplied by the operator (per-container entrypoint scripts).
|
|
CMD ["/usr/sbin/kea-dhcp4", "-c", "/etc/kea/kea-dhcp4.conf"]
|