FROM debian:bullseye-slim

RUN apt-get update && apt-get install -y \
    wget make gcc libc-dev libpng-dev \
    cpanminus \
    build-essential \
    libxml2-dev \
    libcrypt-openssl-rsa-perl \
    libcrypt-openssl-x509-perl \
    libdata-guid-perl \
    libdbix-class-perl \
    libdbd-pg-perl \
    libdbi-perl \
    libio-socket-ssl-perl \
    libmodule-build-perl \
    libnet-oauth2-perl \
    libnet-ssleay-perl \
    libredis-perl \
    libjson-perl \
    libuuid-urandom-perl \
    libyaml-dev

RUN cpanm \
    Mojolicious \
    Mojo::Pg \
    Mojo::Redis \
    Mojo::JWT \
    GraphQL::Client \
    Mojolicious::Plugin::Authentication \
    Mojolicious::Plugin::I18N \
    Mojolicious::Plugin::OpenAPI

ADD . /opt/app
WORKDIR /opt/app

USER nobody
EXPOSE 3000
CMD /opt/app/script/semeet daemon