FROM php:7.2-alpine # postgresql-dev: required for build of pdo_pgsql (includes libpq-fe.h) # zlib-dev: required by zip module # yarn: called by artisan koel:init to prepare frontend RUN apk add \ composer \ git \ postgresql-dev \ yarn \ zlib-dev RUN docker-php-ext-install -j$(nproc) \ exif \ pdo_pgsql \ zip RUN git clone --branch master --recurse-submodules \ https://github.com/phanan/koel /koel WORKDIR /koel # In Encrypter.php line 43: # The only supported ciphers are AES-128-CBC and AES-256-CBC with the correct key lengths. RUN APP_KEY="WORKAROUND_EXACTLY_32_CHARS_LONG" \ composer install --no-interaction RUN yarn install # TODO run as non-root COPY /run-koel.sh / EXPOSE 8080 CMD ["/run-koel.sh"]