FROM ubuntu:18.04
WORKDIR /agent
# Install essentials.
RUN apt-get update && apt-get install -y --no-install-recommends sudo curl ca-certificates gnupg apt-transport-https supervisor
RUN curl -1sLf 'https://dl.cloudsmith.io/public/isc/kea-1-7/cfg/setup/bash.deb.sh' | bash
# Install kea.
RUN apt-get update && apt-get install -y --no-install-recommends \
        isc-kea-dhcp4-server=1.7.4-isc0012520200128102739 \
        isc-kea-ctrl-agent=1.7.4-isc0012520200128102739 \
        isc-kea-common=1.7.4-isc0012520200128102739 \
        && mkdir -p /var/run/kea/
# Tell CA to listen on all interfaces.
RUN perl -pi -e 's/8000/8001/g' /etc/kea/kea-ctrl-agent.conf && perl -pi -e 's/127\.0\.0\.1/0\.0\.0\.0/g' /etc/kea/kea-ctrl-agent.conf
# Install Stork agent.
COPY backend/cmd/stork-agent/stork-agent /agent/
# Copy configuration files.
COPY docker/supervisor-agent-kea.conf /etc/supervisor.conf
COPY docker/kea-dhcp4-ha1.conf /etc/kea/kea-dhcp4.conf
# Start supervisor.
CMD ["supervisord", "-c", "/etc/supervisor.conf"]
