FROM debian:bullseye-slim

RUN apt-get update && apt-get install -y \
    wget \
    cpanminus \
    build-essential \
    libcrypt-openssl-rsa-perl \
    libdigest-sha-perl \
    libdbd-pg-perl \
    libdbi-perl \
    libdbix-class-perl \
    libmodule-build-tiny-perl \
    libio-socket-ssl-perl \
    libjson-perl \
    libyaml-perl \
    libpng-dev \
    libyaml-dev

RUN cpanm \
    Image::PNG::QRCode \
    Mojolicious \
    Mojo::Pg \
    Mojo::Redis \
    Mojo::JWT \
    Mojolicious::Plugin::OpenAPI

ADD . /opt/cf2022
WORKDIR /opt/cf2022

USER nobody
EXPOSE 3000
CMD /opt/cf2022/script/cf2022 daemon -c 3000