FROM alpine:latest ARG uid ARG gid RUN addgroup -g $gid idalius RUN adduser -u $uid -D -G idalius idalius # Intermediate tools used to build perl modules not provided as apk RUN apk add perl perl-dev perl-app-cpanminus make gcc libgcc wget musl-dev openssl openssl-dev zlib-dev # Perl modules used by idalius RUN apk add perl-config-tiny perl-html-parser perl-datetime perl-io-socket-ssl # Build and install POE and POE::Component::IRC modules RUN cpanm install POE POE::Component::IRC RUN cpanm install -n POE::Component::SSLify # Remove non-runtime deps RUN apk del perl-dev perl-app-cpanminus make gcc libgcc wget musl-dev # Remove unneeded caches etc RUN rm -rf /root/.cpanm /var/cache/apk/* USER idalius # Expect idalius volume mounted to /idalius WORKDIR /idalius ENV PERL5LIB /idalius CMD perl ./idalius.pl