Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #
- # DOCKER COMPOSE STACK FOR DOCKER COMPOSE MANAGER PLUGIN FOR UNRAID
- #
- #
- # 1 EDIT THIS COMPOSE FILE AND CHANGE THE DEFAULT PASSWORD FOR THE DATABASE (optional)
- #
- # Replace the 3 instances of "password123"
- #
- #
- # 2 CREATE THE EXPECTED DIRECTORIES IN APPDATA BEFORE CREATING THE CONTAINERS
- #
- # sudo mkdir -p /mnt/user/appdata/paperless/{consume,export,redis,mariadb,paperless-ai,ollama}
- # sudo mkdir -p /mnt/user/appdata/paperless/paperless/{data,media}
- # sudo mkdir -p /mnt/user/appdata/paperless/paperless-gpt/{prompts,hocr,pdf}
- # sudo chown 999:999 /mnt/user/appdata/paperless/mariadb
- #
- #
- # 3 YOU CAN CHECK THE PERMISSIONS FOR APPDATA ARE CORRECT WITH THE ls -l COMMAND
- #
- # ls -l /mnt/user/appdata/paperless
- #
- # drwxr-xr-x 1 root root 6 Jun 22 17:00 consume/
- # drwxr-xr-x 1 root root 6 Jun 22 17:00 export/
- # drwxr-xr-x 1 999 999 4096 Jun 22 17:01 mariadb/
- # drwxr-xr-x 1 root root 60 Jun 22 17:01 ollama/
- # drwxr-xr-x 1 root root 31 Jun 22 17:00 paperless/
- # drwxr-xr-x 1 root root 12 7 Jun 22 17:26 paperless-ai/
- # drwxr-xr-x 1 root root 44 Jun 22 17:00 paperless-gpt/
- # drwxr-xr-x 1 root root 22 Jun 22 18:26 redis/
- #
- #
- # 4. YOU CAN NOW CLICK DOCKER-COMPOSE UP AND START UP ALL THE COTNTAINERS
- #
- #
- # 5. AFTER RUNNING OLLAMA CONTAINER YOU NEED TO PULL THE AI MODELS
- #
- # docker exec -it paperless-ollama ollama pull llama3
- # docker exec -it paperless-ollama ollama pull minicpm-v
- #
- #
- # 6. PAPERLESS-NGX SETUP (WEB GUI)
- #
- # you need to generate an API key in paperless-ngx
- # Point your web-browser to paperless-ngx http://xxx.xxx.xxx.xxx:8000
- # Do the basic setup and then click edit my profile in top right had corner to generate a token
- #
- #
- # 7. PAPERLESS-AI SETUP (WEB GUI)
- #
- # Point your web-browser to paperless-ai http://xxx.xxx.xxx.xxx:3000
- # API Token = the token generated by paperless-ngx in step 6.
- # Ollama API URL = http://paperless-ollama:11434
- # Ollama model = llama3
- #
- # 8. PAPERLESS-GPT SETUP (EDIT docker-compose file)
- #
- # Edit this compose file and insert the API token you generated in step 6.
- #
- # Example:
- #
- # paperless-gpt:
- # container_name: paperless-gpt
- # image: icereed/paperless-gpt:latest
- # restart: unless-stopped
- # environment:
- # PAPERLESS_BASE_URL: "http://paperless:8000"
- # PAPERLESS_API_TOKEN: e3087dd8e058aebfc522fb91426d48d8b4a53a72
- #
- #
- # EXTERNAL PORTS OPENED BY THIS DOCKER STACK
- #
- # 8000 = paperless-ngx
- # 3000 = paperless-ai
- # 8082 = paperless-gpt
- #
- services:
- paperless:
- container_name: paperless
- image: ghcr.io/paperless-ngx/paperless-ngx:latest
- restart: unless-stopped
- depends_on:
- - paperless-mariadb
- - paperless-redis
- - paperless-gotenberg
- - paperless-tika
- ports:
- - "8000:8000"
- volumes:
- - /mnt/user/appdata/paperless/paperless/data:/usr/src/paperless/data
- - /mnt/user/appdata/paperless/paperless/media:/usr/src/paperless/media
- # - /mnt/user/appdata/paperless/consume:/usr/src/paperless/consume
- # - /mnt/user/appdata/paperless/export:/usr/src/paperless/export
- environment:
- USERMAP_UID: 99
- USERMAP_GID: 100
- PAPERLESS_REDIS: redis://paperless-redis:6379
- PAPERLESS_DBENGINE: mariadb
- PAPERLESS_DBHOST: paperless-mariadb
- PAPERLESS_DBPORT: 3306
- PAPERLESS_DBUSER: paperless
- PAPERLESS_DBPASS: password123 # Password here
- PAPERLESS_TIME_ZONE: Pacific/Auckland
- PAPERLESS_OCR_LANGUAGE: eng
- PAPERLESS_TIKA_ENABLED: 1
- PAPERLESS_TIKA_ENDPOINT: http://paperless-tika:9998
- PAPERLESS_TIKA_GOTENBERG_ENDPOINT: http://paperless-gotenberg:3000
- PAPERLESS_TASK_WORKERS: 6
- PAPERLESS_ENABLE_WEBSERVER: true
- PAPERLESS_PRE_CONSUME_SCRIPT: ""
- PAPERLESS_POST_CONSUME_SCRIPT: ""
- labels:
- net.unraid.docker.icon: "https://libs.websoft9.com/Websoft9/logo/product/paperlessngx-websoft9.png"
- net.unraid.docker.webui: "http://[IP]:8000"
- networks:
- - paperless-net
- paperless-redis:
- container_name: paperless-redis
- image: docker.io/library/redis:8
- restart: unless-stopped
- volumes:
- - /mnt/user/appdata/paperless/redis:/data
- cap_drop:
- - ALL
- security_opt:
- - no-new-privileges=true
- networks:
- - paperless-net
- paperless-mariadb:
- container_name: paperless-mariadb
- image: docker.io/library/mariadb:11
- restart: unless-stopped
- volumes:
- - /mnt/user/appdata/paperless/mariadb:/var/lib/mysql
- environment:
- MARIADB_HOST: paperless
- MARIADB_DATABASE: paperless
- MARIADB_USER: paperless
- MARIADB_PASSWORD: password123 # Password here
- MARIADB_ROOT_PASSWORD: password123 # Password here
- networks:
- - paperless-net
- paperless-gotenberg:
- container_name: paperless-gotenberg
- image: docker.io/gotenberg/gotenberg:8.20
- restart: unless-stopped
- command:
- - "gotenberg"
- - "--chromium-disable-javascript=true"
- - "--chromium-allow-list=file:///tmp/.*"
- cap_drop:
- - ALL
- security_opt:
- - no-new-privileges=true
- networks:
- - paperless-net
- paperless-tika:
- container_name: paperless-tika
- image: docker.io/apache/tika:latest
- restart: unless-stopped
- cap_drop:
- - ALL
- networks:
- - paperless-net
- paperless-ai:
- container_name: paperless-ai
- image: clusterzx/paperless-ai
- restart: unless-stopped
- environment:
- - PAPERLESS_AI_PORT=3000
- - RAG_SERVICE_URL=http://paperless:8000
- - RAG_SERVICE_ENABLED=true
- ports:
- - "3000:3000"
- volumes:
- - /mnt/user/appdata/paperless/paperless-ai:/app/data
- cap_drop:
- - ALL
- security_opt:
- - no-new-privileges=true
- labels:
- net.unraid.docker.webui: "http://[IP]:3000"
- networks:
- - paperless-net
- paperless-gpt:
- container_name: paperless-gpt
- image: icereed/paperless-gpt:latest
- restart: unless-stopped
- environment:
- PAPERLESS_BASE_URL: "http://paperless:8000"
- PAPERLESS_API_TOKEN: e3087dd8e058aebfc522fb91426d48d8b4a53a72 # API TOKEN FROM PAPERLESS-NGX GOES HERE
- LLM_PROVIDER: "ollama"
- LLM_MODEL: "llama3"
- OLLAMA_HOST: "http://paperless-ollama:11434"
- TOKEN_LIMIT: 1000
- OCR_PROVIDER: "llm"
- VISION_LLM_PROVIDER: "ollama"
- VISION_LLM_MODEL: "minicpm-v"
- OCR_PROCESS_MODE: "image"
- PDF_SKIP_EXISTING_OCR: "false"
- CREATE_LOCAL_HOCR: "false"
- LOCAL_HOCR_PATH: "/app/hocr"
- CREATE_LOCAL_PDF: "false"
- LOCAL_PDF_PATH: "/app/pdf"
- PDF_UPLOAD: "false"
- PDF_REPLACE: "false"
- PDF_COPY_METADATA: "true"
- PDF_OCR_TAGGING: "true"
- OCR_LIMIT_PAGES: "0"
- LOG_LEVEL: "info"
- MANUAL_TAG: "paperless-gpt"
- AUTO_TAG: "paperless-gpt-auto"
- AUTO_OCR_TAG: "paperless-gpt-ocr-auto"
- PDF_OCR_COMPLETE_TAG: "paperless-gpt-ocr-complete"
- AUTO_GENERATE_TAGS: "true"
- AUTO_GENERATE_TITLE: "true"
- volumes:
- - /mnt/user/appdata/paperless/paperless-gpt/prompts:/app/prompts
- - /mnt/user/appdata/paperless/paperless-gpt/hocr:/app/hocr
- - /mnt/user/appdata/paperless/paperless-gpt/pdf:/app/pdf
- # - ${HOME}/.config/gcloud/application_default_credentials.json:/app/credentials.json
- ports:
- - "8082:8080"
- depends_on:
- - paperless
- cap_drop:
- - ALL
- security_opt:
- - no-new-privileges=true
- labels:
- net.unraid.docker.webui: "http://[IP]:8082"
- networks:
- - paperless-net
- paperless-ollama:
- container_name: paperless-ollama
- image: ollama/ollama
- restart: unless-stopped
- volumes:
- - /mnt/user/appdata/paperless/ollama:/root/.ollama
- cap_drop:
- - ALL
- security_opt:
- - no-new-privileges=true
- networks:
- - paperless-net
- networks:
- paperless-net:
- driver: bridge
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement