FROM centos:7
LABEL maintainer="Yaltik - Fabien Bourgeois <fabien@yaltik.com>"

# http://bugs.python.org/issue19846
# > At the moment, setting "LANG=C" on a Linux system *fundamentally breaks Python 3*, and that's not OK.
ENV LANG C.UTF-8

# Install dependencies
RUN yum install -y centos-release-scl &&\
      yum-config-manager --enable rhel-server-rhscl-7-rpms && \
      yum install -y rh-python38 && \
      yum clean all
# Create radicale user
RUN useradd radicale -md /opt/radicale
WORKDIR /opt/radicale
USER radicale

# Install Radicale
# Was v2.1.9 because of regressions on v2.1.10+ on SSL handling, so no more included SSL ATM
# No v3 ATM : huge refacotring, whole plugin obsolete...
ENV VERSION 2.1.12
RUN scl enable rh-python38 "pip install --user --no-cache-dir radicale==${VERSION}"
COPY config .config/radicale/config/
RUN mkdir /opt/radicale/storage

# Persistent storage for data and configuration
VOLUME /opt/radicale/storage

# TCP port of Radicale
EXPOSE 5232

# Run Radicale
CMD scl enable rh-python38 ".local/bin/radicale --hosts 0.0.0.0:5232"
