added paperlessngx to stack
This commit is contained in:
parent
221b00f1c4
commit
84d4f44a70
2
dns.yml
2
dns.yml
@ -21,6 +21,8 @@
|
|||||||
ip: "152.53.36.98"
|
ip: "152.53.36.98"
|
||||||
- name: "books"
|
- name: "books"
|
||||||
ip: "152.53.36.98"
|
ip: "152.53.36.98"
|
||||||
|
- name: "paper"
|
||||||
|
ip: "152.53.36.98"
|
||||||
|
|
||||||
tasks:
|
tasks:
|
||||||
- name: Add A records for subdomains
|
- name: Add A records for subdomains
|
||||||
|
@ -2,6 +2,10 @@ auth.thesatelliteoflove.com {
|
|||||||
reverse_proxy authentik-server-1:9000
|
reverse_proxy authentik-server-1:9000
|
||||||
}
|
}
|
||||||
|
|
||||||
|
paper.thesatelliteoflove.com {
|
||||||
|
reverse_proxy paperlessngx-webserver-1:8000
|
||||||
|
}
|
||||||
|
|
||||||
pin.thesatelliteoflove.com {
|
pin.thesatelliteoflove.com {
|
||||||
reverse_proxy pinry-pinry-1:80
|
reverse_proxy pinry-pinry-1:80
|
||||||
}
|
}
|
||||||
|
@ -116,4 +116,8 @@
|
|||||||
|
|
||||||
- name: Install calibre
|
- name: Install calibre
|
||||||
import_tasks: calibre.yml
|
import_tasks: calibre.yml
|
||||||
tags: calibre
|
tags: calibre
|
||||||
|
|
||||||
|
- name: Install paperlessngx
|
||||||
|
import_tasks: paperlessngx.yml
|
||||||
|
tags: paperlessngx
|
26
roles/docker/tasks/paperlessngx.yml
Normal file
26
roles/docker/tasks/paperlessngx.yml
Normal file
@ -0,0 +1,26 @@
|
|||||||
|
- name: make paperlessngx directories
|
||||||
|
ansible.builtin.file:
|
||||||
|
path: "{{ item}}"
|
||||||
|
state: directory
|
||||||
|
loop:
|
||||||
|
- /opt/stacks/paperlessngx
|
||||||
|
|
||||||
|
- name: Template out the compose file
|
||||||
|
ansible.builtin.template:
|
||||||
|
src: paperlessngx-compose.yml.j2
|
||||||
|
dest: /opt/stacks/paperlessngx/compose.yml
|
||||||
|
owner: root
|
||||||
|
mode: 644
|
||||||
|
|
||||||
|
- name: Template out the .env file
|
||||||
|
ansible.builtin.template:
|
||||||
|
src: paperlessngx.env.j2
|
||||||
|
dest: /opt/stacks/paperlessngx/docker-compose.env
|
||||||
|
owner: root
|
||||||
|
mode: 644
|
||||||
|
|
||||||
|
- name: deploy paperlessngx stack
|
||||||
|
community.docker.docker_compose_v2:
|
||||||
|
project_src: /opt/stacks/paperlessngx
|
||||||
|
files:
|
||||||
|
- compose.yml
|
50
roles/docker/templates/paperlessngx-compose.yml.j2
Normal file
50
roles/docker/templates/paperlessngx-compose.yml.j2
Normal file
@ -0,0 +1,50 @@
|
|||||||
|
services:
|
||||||
|
broker:
|
||||||
|
image: docker.io/library/redis:7
|
||||||
|
restart: unless-stopped
|
||||||
|
volumes:
|
||||||
|
- redisdata:/data
|
||||||
|
|
||||||
|
webserver:
|
||||||
|
image: ghcr.io/paperless-ngx/paperless-ngx:latest
|
||||||
|
restart: unless-stopped
|
||||||
|
depends_on:
|
||||||
|
- broker
|
||||||
|
- gotenberg
|
||||||
|
- tika
|
||||||
|
volumes:
|
||||||
|
- data:/usr/src/paperless/data
|
||||||
|
- media:/usr/src/paperless/media
|
||||||
|
- ./export:/usr/src/paperless/export
|
||||||
|
- ./consume:/usr/src/paperless/consume
|
||||||
|
env_file: docker-compose.env
|
||||||
|
environment:
|
||||||
|
PAPERLESS_REDIS: redis://broker:6379
|
||||||
|
PAPERLESS_TIKA_ENABLED: 1
|
||||||
|
PAPERLESS_TIKA_GOTENBERG_ENDPOINT: http://gotenberg:3000
|
||||||
|
PAPERLESS_TIKA_ENDPOINT: http://tika:9998
|
||||||
|
|
||||||
|
gotenberg:
|
||||||
|
image: docker.io/gotenberg/gotenberg:8.7
|
||||||
|
restart: unless-stopped
|
||||||
|
|
||||||
|
# The gotenberg chromium route is used to convert .eml files. We do not
|
||||||
|
# want to allow external content like tracking pixels or even javascript.
|
||||||
|
command:
|
||||||
|
- "gotenberg"
|
||||||
|
- "--chromium-disable-javascript=true"
|
||||||
|
- "--chromium-allow-list=file:///tmp/.*"
|
||||||
|
|
||||||
|
tika:
|
||||||
|
image: docker.io/apache/tika:latest
|
||||||
|
restart: unless-stopped
|
||||||
|
|
||||||
|
volumes:
|
||||||
|
data:
|
||||||
|
media:
|
||||||
|
redisdata:
|
||||||
|
|
||||||
|
networks:
|
||||||
|
default:
|
||||||
|
external: true
|
||||||
|
name: lava
|
42
roles/docker/templates/paperlessngx.env.j2
Normal file
42
roles/docker/templates/paperlessngx.env.j2
Normal file
@ -0,0 +1,42 @@
|
|||||||
|
# The UID and GID of the user used to run paperless in the container. Set this
|
||||||
|
# to your UID and GID on the host so that you have write access to the
|
||||||
|
# consumption directory.
|
||||||
|
#USERMAP_UID=1000
|
||||||
|
#USERMAP_GID=1000
|
||||||
|
|
||||||
|
# Additional languages to install for text recognition, separated by a
|
||||||
|
# whitespace. Note that this is
|
||||||
|
# different from PAPERLESS_OCR_LANGUAGE (default=eng), which defines the
|
||||||
|
# language used for OCR.
|
||||||
|
# The container installs English, German, Italian, Spanish and French by
|
||||||
|
# default.
|
||||||
|
# See https://packages.debian.org/search?keywords=tesseract-ocr-&searchon=names&suite=buster
|
||||||
|
# for available languages.
|
||||||
|
#PAPERLESS_OCR_LANGUAGES=tur ces
|
||||||
|
|
||||||
|
###############################################################################
|
||||||
|
# Paperless-specific settings #
|
||||||
|
###############################################################################
|
||||||
|
|
||||||
|
# All settings defined in the paperless.conf.example can be used here. The
|
||||||
|
# Docker setup does not use the configuration file.
|
||||||
|
# A few commonly adjusted settings are provided below.
|
||||||
|
|
||||||
|
# This is required if you will be exposing Paperless-ngx on a public domain
|
||||||
|
# (if doing so please consider security measures such as reverse proxy)
|
||||||
|
PAPERLESS_URL=https://paper.thesatelliteoflove.com
|
||||||
|
|
||||||
|
# Adjust this key if you plan to make paperless available publicly. It should
|
||||||
|
# be a very long sequence of random characters. You don't need to remember it.
|
||||||
|
PAPERLESS_SECRET_KEY={{ paperlessngx_secret }}
|
||||||
|
|
||||||
|
# Use this variable to set a timezone for the Paperless Docker containers. If not specified, defaults to UTC.
|
||||||
|
PAPERLESS_TIME_ZONE=America/Denver
|
||||||
|
|
||||||
|
# The default language to use for OCR. Set this to the language most of your
|
||||||
|
# documents are written in.
|
||||||
|
#PAPERLESS_OCR_LANGUAGE=eng
|
||||||
|
|
||||||
|
# Set if accessing paperless via a domain subpath e.g. https://domain.com/PATHPREFIX and using a reverse-proxy like traefik or nginx
|
||||||
|
#PAPERLESS_FORCE_SCRIPT_NAME=/PATHPREFIX
|
||||||
|
#PAPERLESS_STATIC_URL=/PATHPREFIX/static/ # trailing slash required
|
Loading…
Reference in New Issue
Block a user