IMAGE kanboard_1.2.18-210106
FROM alpine3.12-php7.3_7.3.25-210106

RUN EOF
    # Install runtime dependencies
    apk --no-cache add php7-dom php7-iconv php7-openssl php7-pdo_pgsql php7-posix php7-simplexml php7-sockets php7-xml php7-zip php7-zlib

    # Install build dependencies
    apk --no-cache add --virtual .deps git

    # Download Kanboard
    wget https://github.com/kanboard/kanboard/archive/v1.2.18.zip -O /srv/kanboard.zip
    unzip /srv/kanboard.zip -d /srv
    mv /srv/kanboard-* /srv/kanboard

    # Install plugins
    git clone --depth=1 https://github.com/BlueTeck/kanboard_plugin_coverimage /srv/kanboard/plugins/Coverimage
    git clone --depth=1 https://github.com/BlueTeck/kanboard_plugin_metadata /srv/kanboard/plugins/Metadata
    git clone --depth=1 https://github.com/eSkiSo/Subtaskdate /srv/kanboard/plugins/Subtaskdate
    git clone --depth=1 https://github.com/kanboard/plugin-calendar /srv/kanboard/plugins/Calendar
    git clone --depth=1 https://github.com/kanboard/plugin-gantt /srv/kanboard/plugins/Gantt
    git clone --depth=1 https://github.com/kanboard/plugin-gravatar /srv/kanboard/plugins/Gravatar
    git clone --depth=1 https://github.com/kanboard/plugin-registration /srv/kanboard/plugins/Registration
    git clone --depth=1 https://github.com/kanboard/plugin-task-board-date /srv/kanboard/plugins/TaskBoardDate
    git clone --depth=1 https://github.com/oliviermaridat/kanboard-milestone-plugin /srv/kanboard/plugins/Milestone
    git clone --depth=1 https://github.com/trendspotter/kanboard-plugin-budget /srv/kanboard/plugins/Budget                 # Fork of https://github.com/kanboard/plugin-budget
    git clone --depth=1 https://github.com/trendspotter/kanboard-plugin-chat /srv/kanboard/plugins/Chat                     # Fork of https://github.com/kanboard/plugin-chat
    git clone --depth=1 https://github.com/trendspotter/kanboard-plugin-relationgraph /srv/kanboard/plugins/Relationgraph   # Fork of https://github.com/xavividal/kanboard-plugin-relationgraph
    git clone --depth=1 https://github.com/trendspotter/kanboard-plugin-sms-2fa /srv/kanboard/plugins/SmsTwoFactor          # Fork of https://github.com/kanboard/plugin-sms-2fa
EOF

COPY image.d

RUN EOF
    # Create OS user
    addgroup -S -g 8080 kanboard
    adduser -S -u 8080 -h /srv/kanboard -s /bin/false -g kanboard -G kanboard kanboard

    # Cleanup
    apk --no-cache del .deps
    rm -f /srv/kanboard.zip
    find /srv/kanboard -name '.git*' -exec rm -rf {} +
EOF

CMD /bin/s6-svscan /etc/services.d
