self-hosted/webdav/Dockerfile

60 lines
1.5 KiB
Docker
Raw Normal View History

2022-03-07 19:39:17 +01:00
FROM alpine:3.15 AS builder
2022-02-04 05:53:18 +01:00
2022-02-20 09:53:45 +01:00
RUN apk add --update \
--no-cache \
2022-03-07 19:39:17 +01:00
pcre~=8.45 \
libxml2~=2.9 \
libxslt~=1.1 \
gcc~=10.3 \
make~=4.3 \
libc-dev~=0.7 \
pcre-dev~=8.45 \
zlib-dev~=1.2 \
libxml2-dev~=2.9 \
libxslt-dev~=1.1 && \
2022-02-20 09:53:45 +01:00
cd /tmp && \
wget https://github.com/nginx/nginx/archive/master.zip -O nginx.zip && \
unzip nginx.zip && \
wget https://github.com/arut/nginx-dav-ext-module/archive/master.zip -O dav-ext-module.zip && \
unzip dav-ext-module.zip && \
cd nginx-master && \
./auto/configure --prefix=/opt/nginx --with-http_dav_module --add-module=/tmp/nginx-dav-ext-module-master && \
make && \
make install && \
apk del gcc make libc-dev pcre-dev zlib-dev libxml2-dev libxslt-dev && \
rm -rf /var/cache/apk
2022-03-07 19:39:17 +01:00
FROM alpine:3.15
2022-02-20 09:53:45 +01:00
2022-02-21 07:15:24 +01:00
ARG UID=${UID:-1000}
ARG GID=${GID:-1000}
2022-02-04 05:53:18 +01:00
RUN apk add --update \
--no-cache \
2022-03-07 19:39:17 +01:00
pcre~=8.45 \
libxml2~=2.9 \
libxslt~=1.1 \
tini~=0.19 \
shadow~=4.8 &&\
2022-02-21 07:15:24 +01:00
rm -rf /var/cache/apk && \
2022-02-04 05:53:18 +01:00
groupmod -g $GID www-data && \
adduser -u $UID -S www-data -G www-data && \
mkdir /share
2022-02-20 09:53:45 +01:00
COPY --from=builder /opt /opt
COPY webdav.conf /opt/nginx/conf/nginx.conf
2022-02-04 05:53:18 +01:00
COPY entrypoint.sh /
EXPOSE 8080
VOLUME /share
RUN chown -R www-data:www-data /share && \
2022-02-20 09:53:45 +01:00
chown -R www-data:www-data /opt/nginx
2022-02-04 05:53:18 +01:00
USER www-data
ENTRYPOINT ["tini", "--"]
CMD ["/bin/sh", "/entrypoint.sh"]