How to Install Docspell on FreeBSD Latest

Docspell is an open-source document management system designed to help you store, organize, and search your documents. Here's a step-by-step guide on how to install Docspell on a FreeBSD Latest system.

Requirements

Step 1: Install Java 11 or higher

  1. Update the FreeBSD package repository:

    pkg update
    
  2. Install OpenJDK 11:

    pkg install openjdk11
    
  3. Verify that Java has been installed correctly:

    java -version
    

Step 2: Install PostgreSQL

  1. Update the package repository:

    pkg update
    
  2. Install PostgreSQL:

    pkg install postgresql95-server
    
  3. Initialize the PostgreSQL database:

    service postgresql initdb
    
  4. Start the PostgreSQL service:

    service postgresql start
    
  5. Enable the PostgreSQL service to start automatically at boot time:

    sysrc postgresql_enable=YES
    

Step 3: Install Docspell

  1. Download the latest Docspell release from the official website:

    curl -L https://docspell.org/releases/docspell-latest.jar -o docspell.jar
    
  2. Create a user for Docspell:

    pw useradd -n docspell -c "Docspell User" -s /usr/sbin/nologin
    
  3. Create a directory for Docspell:

    mkdir /usr/local/docspell
    
  4. Set the ownership of the directory to the docspell user:

    chown -R docspell:docspell /usr/local/docspell
    
  5. Copy the downloaded Docspell jar file to the new directory:

    cp docspell.jar /usr/local/docspell/
    
  6. Create a configuration file for Docspell:

    cat <<EOT >> /usr/local/docspell/docspell.conf
    spring.datasource.url=jdbc:postgresql://localhost/docspell
    spring.datasource.username=docspell
    spring.datasource.password=docspell
    server.port=8080
    EOT
    

    This configuration file sets the database URL to jdbc:postgresql://localhost/docspell, with a username and password of docspell. You can edit this file to match your own setup.

  7. Create a startup script for Docspell:

    cat <<EOT >> /usr/local/etc/rc.d/docspell
    #!/bin/sh
    #
    # PROVIDE: docspell
    # REQUIRE: LOGIN postgresql
    # KEYWORD: shutdown
    
    . /etc/rc.subr
    
    name="docspell"
    rcvar="docspell_enable"
    command="/usr/local/openjdk11/bin/java"
    command_args="-jar /usr/local/docspell/docspell-latest.jar --spring.config.name=docspell --spring.config.location=/usr/local/docspell/docspell.conf"
    pidfile="/var/run/${name}.pid"
    user="docspell"
    
    load_rc_config $name
    : ${docspell_enable:=no}
    
    run_rc_command "$1"
    EOT
    
  8. Set the script as executable:

    chmod +x /usr/local/etc/rc.d/docspell
    
  9. Enable the Docspell service to start automatically at boot time:

    sysrc docspell_enable=YES
    

Step 4: Start Docspell

  1. Start the Docspell service:

    service docspell start
    
  2. Verify that Docspell is running by accessing it from your web browser:

    http://YOUR_IP_ADDRESS:8080/
    

    Replace YOUR_IP_ADDRESS with the IP address of your FreeBSD server.

Congratulations! You've successfully installed Docspell on your FreeBSD Latest system.

If you want to self-host in an easy, hands free way, need an external IP address, or simply want your data in your own hands, give IPv6.rs a try!

Alternatively, for the best virtual desktop, try Shells!