mirror of
https://github.com/craigerl/aprsd.git
synced 2024-11-17 22:01:49 -05:00
Hemna
c5acdba6de
After adding the rpc service for aprsd server and separating the admin web REST interface, healthcheck no longer worked. The stats are available via rpc now.
57 lines
1.5 KiB
Docker
57 lines
1.5 KiB
Docker
#FROM python:3-bullseye as aprsd
|
|
FROM ubuntu:22.04 as aprsd
|
|
|
|
# Dockerfile for building a container during aprsd development.
|
|
|
|
ARG UID
|
|
ARG GID
|
|
ARG TZ
|
|
ARG VERSION=2.6.0
|
|
ARG BUILDX_QEMU_ENV
|
|
ENV APRS_USER=aprs
|
|
ENV HOME=/home/aprs
|
|
ENV TZ=${TZ:-US/Eastern}
|
|
ENV UID=${UID:-1000}
|
|
ENV GID=${GID:-1000}
|
|
ENV LC_ALL=C.UTF-8
|
|
ENV LANG=C.UTF-8
|
|
ENV APRSD_PIP_VERSION=${VERSION}
|
|
|
|
|
|
ENV DEBIAN_FRONTEND=noninteractive
|
|
RUN apt update
|
|
RUN apt install -y git build-essential
|
|
RUN apt install -y libffi-dev python3-dev libssl-dev libxml2-dev libxslt-dev
|
|
RUN apt install -y python3 python3-pip python3-dev python3-lxml
|
|
|
|
RUN addgroup --gid $GID $APRS_USER
|
|
RUN useradd -m -u $UID -g $APRS_USER $APRS_USER
|
|
|
|
# Handle an extremely specific issue when building the cryptography package for
|
|
# 32-bit architectures within QEMU running on a 64-bit host (issue #30).
|
|
RUN if [ "${BUILDX_QEMU_ENV}" = "true" -a "$(getconf LONG_BIT)" = "32" ]; then \
|
|
pip3 install -U cryptography==3.3.2; \
|
|
else \
|
|
pip3 install cryptography ;\
|
|
fi
|
|
|
|
# Install aprsd
|
|
RUN pip install aprsd==$APRSD_PIP_VERSION
|
|
|
|
# Ensure /config is there with a default config file
|
|
USER root
|
|
RUN mkdir -p /config
|
|
RUN aprsd sample-config > /config/aprsd.conf
|
|
RUN chown -R $APRS_USER:$APRS_USER /config
|
|
|
|
# override this to run another configuration
|
|
ENV CONF default
|
|
VOLUME ["/config", "/plugins"]
|
|
|
|
USER $APRS_USER
|
|
ADD bin/run.sh /usr/local/bin
|
|
ENTRYPOINT ["/usr/local/bin/run.sh"]
|
|
|
|
HEALTHCHECK --interval=5m --timeout=12s --start-period=30s \
|
|
CMD aprsd healthcheck --config /config/aprsd.conf
|