]> git.immae.eu Git - github/shaarli/Shaarli.git/blobdiff - Dockerfile
Merge tag 'v0.12.1' into latest
[github/shaarli/Shaarli.git] / Dockerfile
index 93146c524e9422bf0699d14999c5250c8ac3b188..f6120b71f2b1d4507cd46dcaf7ebf09934d98139 100644 (file)
@@ -4,8 +4,9 @@
 FROM python:3-alpine as docs
 ADD . /usr/src/app/shaarli
 RUN cd /usr/src/app/shaarli \
+    && apk add --no-cache gcc musl-dev \
     && pip install --no-cache-dir mkdocs \
-    && mkdocs build
+    && mkdocs build --clean
 
 # Stage 2:
 # - Resolve PHP dependencies with Composer
@@ -15,8 +16,17 @@ RUN cd shaarli \
     && composer --prefer-dist --no-dev install
 
 # Stage 3:
+# - Frontend dependencies
+FROM node:12-alpine as node
+COPY --from=composer /app/shaarli shaarli
+RUN cd shaarli \
+    && yarn install \
+    && yarn run build \
+    && rm -rf node_modules
+
+# Stage 4:
 # - Shaarli image
-FROM alpine:3.6
+FROM alpine:3.8
 LABEL maintainer="Shaarli Community"
 
 RUN apk --update --no-cache add \
@@ -34,6 +44,7 @@ RUN apk --update --no-cache add \
         php7-openssl \
         php7-session \
         php7-xml \
+        php7-simplexml \
         php7-zlib \
         s6
 
@@ -47,12 +58,13 @@ RUN rm -rf /etc/php7/php-fpm.d/www.conf \
 
 
 WORKDIR /var/www
-COPY --from=composer /app/shaarli shaarli
+COPY --from=node /shaarli shaarli
 
 RUN chown -R nginx:nginx . \
     && ln -sf /dev/stdout /var/log/nginx/shaarli.access.log \
     && ln -sf /dev/stderr /var/log/nginx/shaarli.error.log
 
+VOLUME /var/www/shaarli/cache
 VOLUME /var/www/shaarli/data
 
 EXPOSE 80