diff --git a/.env b/.env deleted file mode 100644 index 0bd5be6..0000000 --- a/.env +++ /dev/null @@ -1 +0,0 @@ -COMPOSE_PROJECT_NAME=paperless diff --git a/docker-compose.yml b/docker-compose.yml index 34227d3..b82aad1 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -36,12 +36,12 @@ services: core: container_name: paperless_core - image: jonaswinkler/paperless-ng:1.5.0 + image: jonaswinkler/paperless-ng:${PAPERLESS_VERSION:-latest} restart: unless-stopped depends_on: - broker ports: - - :8800:8000 + - ${PAPERLESS_HOST_IP_ADDRESS:-127.0.0.1}:${PAPERLESS_HOST_PORT:-8800}:8000 volumes: - data:/usr/src/paperless/data - media:/usr/src/paperless/media @@ -49,15 +49,14 @@ services: - ./consume:/usr/src/paperless/consume env_file: docker-compose.env environment: - PAPERLESS_ADMIN_USER: - PAPERLESS_ADMIN_PASSWORD: + PAPERLESS_ADMIN_USER: ${PAPERLESS_ADMIN_USER:-sysadmin} + PAPERLESS_ADMIN_PASSWORD: ${PAPERLESS_ADMIN_PASSWORD:-password} PAPERLESS_REDIS: redis://broker:6379 - PAPERLESS_DBHOST: - PAPERLESS_DBPORT: - PAPERLESS_DBNAME: - PAPERLESS_DBUSER: - PAPERLESS_DBPASS: - + PAPERLESS_DBHOST: ${PAPERLESS_DB_HOST:?err} + PAPERLESS_DBPORT: ${PAPERLESS_DB_PORT:?err} + PAPERLESS_DBNAME: ${PAPERLESS_DB_NAME:?err} + PAPERLESS_DBUSER: ${PAPERLESS_DB_USER:?err} + PAPERLESS_DBPASS: ${PAPERLESS_DB_PASSWORD:?err} volumes: data: diff --git a/setup b/setup new file mode 100755 index 0000000..1eef51b --- /dev/null +++ b/setup @@ -0,0 +1,66 @@ +#!/bin/bash + +echo "####################################################################" +echo "# docker_paperless_setup_script #" +echo "# Dennis Buchhorn - bucde@b-eit.de #" +echo "####################################################################" +echo "# WARNING: password is plain text input! #" +echo "# #" +echo "# Config will be saved in '.env' file. #" +echo "# (everything in plain text, even the password) #" +#echo "# #" +echo "####################################################################" +echo "" + +CONFIG_EXISTS="false" +KEEP_CONFIG="" + +PAPERLESS_VERSION="" +PAPERLESS_HOST_IP_ADDRESS="" +PAPERLESS_HOST_PORT="" +PAPERLESS_ADMIN_USER="" +PAPERLESS_ADMIN_PASSWORD="" +PAPERLESS_DB_HOST="" +PAPERLESS_DB_PORT="" +PAPERLESS_DB_NAME="" +PAPERLESS_DB_USER="" +PAPERLESS_DB_PASSWORD="" + +if [ -f ".env" ]; then + CONFIG_EXISTS="true" + read -p "Config file '.env' already exists! Would you like to use this? (y/n)" KEEP_CONFIG +fi + +if [ $CONFIG_EXISTS == "false" ] || [ $KEEP_CONFIG == "n" ]; then + read -p "Enter paperless version which should be used: " PAPERLESS_VERSION + read -p "Enter host (vm) ip address on which paperless should be accessible: " PAPERLESS_HOST_IP_ADDRESS + read -p "Enter host (vm) port on which paperless should be accessible: " PAPERLESS_HOST_PORT + read -p "Enter admin user name for paperless: " PAPERLESS_ADMIN_USER + read -p "Enter admin password for paperless: " PAPERLESS_ADMIN_PASSWORD + read -p "Enter database host for paperless: " PAPERLESS_DB_HOST + read -p "Enter database port for paperless: " PAPERLESS_DB_PORT + read -p "Enter database name for paperless: " PAPERLESS_DB_NAME + read -p "Enter database user name for paperless: " PAPERLESS_DB_USER + read -p "Enter database user password for paperless: " PAPERLESS_DB_PASSWORD + + rm -f .env + touch .env + echo "PAPERLESS_VERSION="$PAPERLESS_VERSION >> .env + echo "PAPERLESS_HOST_IP_ADDRESS="$PAPERLESS_HOST_IP_ADDRESS >> .env + echo "PAPERLESS_HOST_PORT="$PAPERLESS_HOST_PORT >> .env + echo "PAPERLESS_ADMIN_USER="$PAPERLESS_ADMIN_USER >> .env + echo "PAPERLESS_ADMIN_PASSWORD="$PAPERLESS_ADMIN_PASSWORD >> .env + echo "PAPERLESS_DB_HOST="$PAPERLESS_DB_HOST >> .env + echo "PAPERLESS_DB_PORT="$PAPERLESS_DB_PORT >> .env + echo "PAPERLESS_DB_NAME="$PAPERLESS_DB_NAME >> .env + echo "PAPERLESS_DB_USER="$PAPERLESS_DB_USER >> .env + echo "PAPERLESS_DB_PASSWORD="$PAPERLESS_DB_PASSWORD >> .env +fi + +docker-compose up -d + +echo "Wait a few seconds for the container to spin up ..." + +sleep 5 + +echo "Done!"