mirror of
https://github.com/paperless-ngx/paperless-ngx.git
synced 2025-04-02 13:45:10 -05:00
49 lines
1.7 KiB
Docker
49 lines
1.7 KiB
Docker
FROM alpine:3.7
|
|
|
|
LABEL maintainer="The Paperless Project https://github.com/danielquinn/paperless" \
|
|
contributors="Guy Addadi <addadi@gmail.com>, Pit Kleyersburg <pitkley@googlemail.com>, \
|
|
Sven Fischer <git-dev@linux4tw.de>"
|
|
|
|
# Copy requirements file and init script
|
|
COPY requirements.txt /usr/src/paperless/
|
|
COPY scripts/docker-entrypoint.sh /sbin/docker-entrypoint.sh
|
|
|
|
# Set export and consumption directories
|
|
ENV PAPERLESS_EXPORT_DIR=/export \
|
|
PAPERLESS_CONSUMPTION_DIR=/consume
|
|
|
|
# Install dependencies
|
|
RUN apk --no-cache --update add \
|
|
python3 gnupg libmagic bash shadow curl \
|
|
sudo poppler tesseract-ocr imagemagick ghostscript unpaper && \
|
|
apk --no-cache add --virtual .build-dependencies \
|
|
python3-dev poppler-dev gcc g++ musl-dev zlib-dev jpeg-dev && \
|
|
# Install python dependencies
|
|
python3 -m ensurepip && \
|
|
rm -r /usr/lib/python*/ensurepip && \
|
|
cd /usr/src/paperless && \
|
|
pip3 install --no-cache-dir -r requirements.txt && \
|
|
# Remove build dependencies
|
|
apk del .build-dependencies && \
|
|
# Create the consumption directory
|
|
mkdir -p $PAPERLESS_CONSUMPTION_DIR && \
|
|
# Create user
|
|
addgroup -g 1000 paperless && \
|
|
adduser -D -u 1000 -G paperless -h /usr/src/paperless paperless && \
|
|
chown -Rh paperless:paperless /usr/src/paperless && \
|
|
mkdir -p $PAPERLESS_EXPORT_DIR && \
|
|
# Setup entrypoint
|
|
chmod 755 /sbin/docker-entrypoint.sh
|
|
|
|
WORKDIR /usr/src/paperless/src
|
|
# Mount volumes and set Entrypoint
|
|
VOLUME ["/usr/src/paperless/data", "/usr/src/paperless/media", "/consume", "/export"]
|
|
ENTRYPOINT ["/sbin/docker-entrypoint.sh"]
|
|
CMD ["--help"]
|
|
|
|
# Copy application
|
|
COPY src/ /usr/src/paperless/src/
|
|
COPY data/ /usr/src/paperless/data/
|
|
COPY media/ /usr/src/paperless/media/
|
|
|