ARG docker_base_image
FROM ${docker_base_image}
ENV container docker
MAINTAINER info@spillbox.io

ARG cloud_user
ARG cloud_group
ARG cloud_uid
ARG cloud_gid
ARG cloud_shell

ENV CLOUD_USER  ${cloud_user}
ENV CLOUD_GROUP ${cloud_group}
ENV CLOUD_UID   ${cloud_uid}
ENV CLOUD_GID   ${cloud_gid}
ENV CLOUD_SHELL ${cloud_shell}

RUN sed -i s/mirror.centos.org/vault.centos.org/g /etc/yum.repos.d/*.repo
RUN sed -i s/^#.*baseurl=http/baseurl=http/g /etc/yum.repos.d/*.repo
RUN yum check-update -v || true
RUN yum -y update; yum clean all

RUN yum clean all
RUN yum -y install dbus nfs-utils net-tools zlib-devel openssl-devel
#RUN yum -y groupinstall "Development Tools" "Graphical Administration Tools" "Legacy UNIX Compatibility" "Scientific Support" "Security Tools" "Smart Card Support"
RUN yum -y install dbus nfs-utils net-tools zlib-devel openssl-devel sudo

RUN yum swap -y fakesystemd systemd
RUN yum -y install systemd systemd-libs
RUN systemctl mask dev-mqueue.mount dev-hugepages.mount \
    systemd-remount-fs.service sys-kernel-config.mount \
    sys-kernel-debug.mount sys-fs-fuse-connections.mount
RUN systemctl mask systemd-logind.service
RUN systemctl disable graphical.target; systemctl enable multi-user.target

RUN yum -y install csh

RUN yum -y install initscripts && yum clean all

EXPOSE 111/tcp 111/udp 2049/tcp 2049/udp 2046/udp 875/tcp 875/udp 1110/tcp 1110/udp 4045/tcp 4045/udp 

# Copy the dbus.service file from systemd to location with Dockerfile
COPY dbus.service /usr/lib/systemd/system/dbus.service

VOLUME ["/sys/fs/cgroup"]
VOLUME ["/run"]

#CMD  ["/usr/lib/systemd/systemd"]

RUN groupadd --gid ${CLOUD_GID} ${CLOUD_GROUP}
RUN adduser --uid ${CLOUD_UID} --gid ${CLOUD_GID} --shell ${CLOUD_SHELL} ${CLOUD_USER}
RUN echo "$CLOUD_USER  ALL=(ALL) NOPASSWD:ALL" | sudo tee /etc/sudoers.d/$CLOUD_USER
COPY entrypoint.sh /entrypoint.sh
RUN chmod 755 /entrypoint.sh
USER $CLOUD_USER
ENTRYPOINT ["/entrypoint.sh"]
