diff --git a/Dockerfile b/Dockerfile index 02966778e6c28a35a3b870c7fba87d84d4a47a41..4988a7318fa37467831145ad09f89663a760695e 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,10 +1,54 @@ -FROM ubuntu:bionic +FROM alpine:latest AS builder -RUN apt-get update && \ - apt-get install -y software-properties-common && \ - add-apt-repository ppa:mamarley/quassel && \ - apt-get update && \ - apt-get install -y quassel-core libqt5sql5-psql +RUN apk add --no-cache \ + cmake \ + curl \ + dbus-dev \ + g++ \ + gcc \ + git \ + icu-dev \ + icu-libs \ + libressl \ + libressl-dev \ + openldap-dev \ + make \ + paxmark \ + qt5-qtbase-dev \ + qt5-qtscript-dev \ + qt5-qtbase-postgresql \ + qt5-qtbase-sqlite + +RUN mkdir /quassel && \ + cd /quassel/ && \ + git clone -b identd-listen-all --single-branch https://github.com/justjanne/quassel src +RUN mkdir /quassel/build && \ + cd /quassel/build && \ + cmake \ + -DCMAKE_INSTALL_PREFIX=/quassel/install \ + -DCMAKE_BUILD_TYPE="Release" \ + -DUSE_QT5=ON \ + -DWITH_KDE=OFF \ + -DWANT_QTCLIENT=OFF \ + -DWANT_CORE=ON \ + -DWANT_MONO=OFF \ + /quassel/src +RUN cd /quassel/build && \ + make && \ + make install && \ + paxmark -m /quassel/install/bin/quasselcore + +FROM alpine:latest + +RUN apk add --no-cache \ + icu-libs \ + libressl \ + qt5-qtbase \ + qt5-qtscript \ + qt5-qtbase-postgresql \ + qt5-qtbase-sqlite + +COPY --from=builder /quassel/install/bin /usr/bin/ EXPOSE 4242/tcp