Compare commits

..

7 Commits

Author SHA1 Message Date
tteckster 3b0168b8d4
Update paperless-ngx.sh
increase storage
2023-09-11 14:43:56 -04:00
tteckster 435e19d21e
Update CHANGELOG.md 2023-09-11 14:40:12 -04:00
tteckster 29c764031a
Update paperless-ngx-install.sh
tweak
2023-09-11 14:26:36 -04:00
tteckster 95a762c38f
Update paperless-ngx-install.sh
fix unbound variable
2023-09-11 14:14:21 -04:00
tteckster 51dc62aa74
Update paperless-ngx-install.sh
update `paperless.creds`
2023-09-11 14:00:11 -04:00
tteckster 85d523dbdf
Update paperless-ngx-install.sh
add option to install Adminer
2023-09-11 13:43:34 -04:00
tteckster 3da94bb95c
Update paperless-ngx-install.sh
use Redis and PostgreSQL
2023-09-11 13:18:06 -04:00
3 changed files with 40 additions and 6 deletions

View File

@ -4,6 +4,13 @@
- All LXC instances created using this repository come pre-installed with Midnight Commander, which is a command-line tool (`mc`) that offers a user-friendly file and directory management interface for the terminal environment. - All LXC instances created using this repository come pre-installed with Midnight Commander, which is a command-line tool (`mc`) that offers a user-friendly file and directory management interface for the terminal environment.
## 2023-09-11
### Changed
- **Paperless-ngx LXC**
- Modify the script to incorporate Redis and PostgreSQL, while also introducing an option to include Adminer during installation.
## 2023-09-10 ## 2023-09-10
### Changed ### Changed

View File

@ -20,7 +20,7 @@ EOF
header_info header_info
echo -e "Loading..." echo -e "Loading..."
APP="Paperless-ngx" APP="Paperless-ngx"
var_disk="8" var_disk="10"
var_cpu="2" var_cpu="2"
var_ram="2048" var_ram="2048"
var_os="debian" var_os="debian"

View File

@ -93,10 +93,11 @@ msg_info "Installing Natural Language Toolkit (Patience)"
$STD python3 -m nltk.downloader -d /usr/share/nltk_data all $STD python3 -m nltk.downloader -d /usr/share/nltk_data all
msg_ok "Installed Natural Language Toolkit" msg_ok "Installed Natural Language Toolkit"
msg_info "Setting up database" msg_info "Setting up PostgreSQL database"
DB_NAME=paperlessdb
DB_USER=paperless DB_USER=paperless
DB_PASS="$(openssl rand -base64 18 | cut -c1-13)" DB_PASS="$(openssl rand -base64 18 | cut -c1-13)"
DB_NAME=paperlessdb SECRET_KEY="$(head /dev/urandom | tr -dc A-Za-z0-9 | head -c 32)"
$STD sudo -u postgres psql -c "CREATE ROLE $DB_USER WITH LOGIN PASSWORD '$DB_PASS';" $STD sudo -u postgres psql -c "CREATE ROLE $DB_USER WITH LOGIN PASSWORD '$DB_PASS';"
$STD sudo -u postgres psql -c "CREATE DATABASE $DB_NAME WITH OWNER $DB_USER TEMPLATE template0;" $STD sudo -u postgres psql -c "CREATE DATABASE $DB_NAME WITH OWNER $DB_USER TEMPLATE template0;"
echo "Paperless-ngx Database User" >>~/paperless.creds echo "Paperless-ngx Database User" >>~/paperless.creds
@ -106,13 +107,39 @@ echo $DB_PASS >>~/paperless.creds
echo "Paperless-ngx Database Name" >>~/paperless.creds echo "Paperless-ngx Database Name" >>~/paperless.creds
echo $DB_NAME >>~/paperless.creds echo $DB_NAME >>~/paperless.creds
mkdir -p {consume,media} mkdir -p {consume,media}
sed -i -e 's|#PAPERLESS_DBNAME=paperless|PAPERLESS_DBNAME=paperlessdb|' /opt/paperless/paperless.conf sed -i -e 's|#PAPERLESS_REDIS=redis://localhost:6379|PAPERLESS_REDIS=redis://localhost:6379|' /opt/paperless/paperless.conf
sed -i -e 's|#PAPERLESS_DBHOST=localhost|PAPERLESS_DBHOST=localhost|' /opt/paperless/paperless.conf
sed -i -e 's|#PAPERLESS_DBPORT=5432|PAPERLESS_DBPORT=5432|' /opt/paperless/paperless.conf
sed -i -e "s|#PAPERLESS_DBNAME=paperless|PAPERLESS_DBNAME=$DB_NAME|" /opt/paperless/paperless.conf
sed -i -e "s|#PAPERLESS_DBUSER=paperless|PAPERLESS_DBUSER=$DB_USER|" /opt/paperless/paperless.conf
sed -i -e "s|#PAPERLESS_DBPASS=paperless|PAPERLESS_DBPASS=$DB_PASS|" /opt/paperless/paperless.conf sed -i -e "s|#PAPERLESS_DBPASS=paperless|PAPERLESS_DBPASS=$DB_PASS|" /opt/paperless/paperless.conf
SECRET_KEY="$(head /dev/urandom | tr -dc A-Za-z0-9 | head -c 32)"
sed -i -e "s|#PAPERLESS_SECRET_KEY=change-me|PAPERLESS_SECRET_KEY=$SECRET_KEY|" /opt/paperless/paperless.conf sed -i -e "s|#PAPERLESS_SECRET_KEY=change-me|PAPERLESS_SECRET_KEY=$SECRET_KEY|" /opt/paperless/paperless.conf
cd /opt/paperless/src cd /opt/paperless/src
$STD python3 manage.py migrate $STD python3 manage.py migrate
msg_ok "Set up database" msg_ok "Set up PostgreSQL database"
read -r -p "Would you like to add Adminer? <y/N> " prompt
if [[ "${prompt,,}" =~ ^(y|yes)$ ]]; then
msg_info "Installing Adminer"
$STD apt install -y adminer
$STD a2enconf adminer
systemctl reload apache2
IP=$(hostname -I | awk '{print $1}')
echo "" >>~/paperless.creds
echo "Adminer Interface" >>~/paperless.creds
echo $IP/adminer/ >>~/paperless.creds
echo "Adminer System" >>~/paperless.creds
echo PostgreSQL >>~/paperless.creds
echo "Adminer Server" >>~/paperless.creds
echo localhost:5432 >>~/paperless.creds
echo "Adminer Username" >>~/paperless.creds
echo $DB_USER >>~/paperless.creds
echo "Adminer Password" >>~/paperless.creds
echo $DB_PASS >>~/paperless.creds
echo "Adminer Database" >>~/paperless.creds
echo $DB_NAME >>~/paperless.creds
msg_ok "Installed Adminer"
fi
msg_info "Setting up admin Paperless-ngx User & Password" msg_info "Setting up admin Paperless-ngx User & Password"
## From https://github.com/linuxserver/docker-paperless-ngx/blob/main/root/etc/cont-init.d/99-migrations ## From https://github.com/linuxserver/docker-paperless-ngx/blob/main/root/etc/cont-init.d/99-migrations