Installed at 10.1.1.24
. Not actually in use.
The application runs in an Ubuntu 20.04 unprivileged LXC container. Under Options, enable the Nesting feature for Docker to work.
The setup is based on the official install documentation and eikek/docspell#718.
wget -qO- https://get.docker.com/ | sh
curl -L "https://github.com/docker/compose/releases/download/1.25.5/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose
mkdir /root/docspell
cd /root/docspell
wget https://raw.githubusercontent.com/eikek/docspell/master/docker/docker-compose.yml
wget https://raw.githubusercontent.com/eikek/docspell/master/docker/docspell.conf
wget https://raw.githubusercontent.com/eikek/docspell/master/docker/.env
# Fill with the config file listed below, but for now set `docspell.server.backend.signup.mode` to `open`.
nano docspell.conf
# Fill with the env file listed below.
nano .env
# Will already restart after a reboot.
docker-compose --project-name docspell up
Setup the reverse proxy using the config below. Open https://docspell.altpeter.me
in the browser and register a user.
Stop the server using Ctrl + C. Edit docspell.conf
again and set docspell.server.backend.signup.mode
to closed
. Restart the server using docker-compose --project-name docspell up -d
.
Go into User Profile and UI Settings. Under Item Detail, enable Browser-native PDF preview. Under Fields, disable Concerned Equipment, Concerning Person and Correspondent Person.
Under Manage Data and Tags, create the following tags:
doctype
Under Folders, create the following folders:
Under Custom Fields, create the following custom fields:
Subscribe to the releases on GitHub.
This is based on 1
TODO
docker-compose down
docker-compose pull
docker-compose up --force-recreate --build -d
docspell.server {
app-name = "docspell.altpeter.me"
bind {
address = "0.0.0.0"
}
base-url = "https://docspell.altpeter.me"
app-id = "altpeter-docspell-rest1"
backend.signup {
mode = "closed"
}
auth {
server-secret = "${AUTH_SECRET_PASS}"
}
integration-endpoint {
enabled = true
http-header {
enabled = true
header-value = ${?DOCSPELL_HEADER_VALUE}
}
}
full-text-search {
enabled = true
solr {
url = "http://solr:8983/solr/docspell"
}
}
backend {
jdbc {
url = "jdbc:"${DB_TYPE}"://"${DB_HOST}":"${DB_PORT}"/"${DB_NAME}
user = ${DB_USER}
password = ${DB_PASS}
}
}
}
docspell.joex {
app-id = "altpeter-docspell-joex1"
base-url = "http://"${HOSTNAME}":7878"
bind {
address = "0.0.0.0"
}
jdbc {
url = "jdbc:"${DB_TYPE}"://"${DB_HOST}":"${DB_PORT}"/"${DB_NAME}
user = ${DB_USER}
password = ${DB_PASS}
}
full-text-search {
enabled = true
solr = {
url = "http://solr:8983/solr/docspell"
}
}
scheduler {
pool-size = 8
}
extraction {
preview {
dpi = 64
}
ocr {
page-range {
begin = 32
}
}
}
text-analysis {
max-length = 10000
}
}
TZ=Europe/Berlin
DOCSPELL_HEADER_VALUE=<pw>
DB_TYPE=postgresql
DB_HOST=db
DB_PORT=5432
DB_NAME=docspell
DB_USER=docspell
DB_PASS=<pw>
CONSUMEDIR_VERBOSE=y
CONSUMEDIR_INTEGRATION=y
CONSUMEDIR_POLLING=n
NEW_INVITE_PASS=<pw>
AUTH_SECRET_PASS=b64:<pw_as_base64>
server {
listen 443 ssl http2;
listen [::]:443 ssl http2;
server_name docspell.altpeter.me;
include /etc/nginx/benni.conf;
include /etc/nginx/ssl.conf;
ssl_certificate /etc/letsencrypt/live/docspell.altpeter.me/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/docspell.altpeter.me/privkey.pem;
ssl_trusted_certificate /etc/letsencrypt/live/docspell.altpeter.me/fullchain.pem;
location / {
proxy_set_header X-Forwarded-Proto https;
proxy_pass http://10.1.1.24:7880;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection $http_connection;
include /etc/nginx/proxy.conf;
}
}