<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>paperless &#8211; Anthony&#039;s Life</title>
	<atom:link href="https://wp.choiandwang.synology.me/tag/paperless/feed/" rel="self" type="application/rss+xml" />
	<link>https://wp.choiandwang.synology.me</link>
	<description>Street Life</description>
	<lastBuildDate>Sat, 04 Oct 2025 16:01:08 +0000</lastBuildDate>
	<language>ko-KR</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.9.4</generator>

<image>
	<url>https://wp.choiandwang.synology.me/wp-content/uploads/2017/12/cropped-sample-image-44-32x32.png</url>
	<title>paperless &#8211; Anthony&#039;s Life</title>
	<link>https://wp.choiandwang.synology.me</link>
	<width>32</width>
	<height>32</height>
</image> 
<site xmlns="com-wordpress:feed-additions:1">221796489</site>	<item>
		<title>Paperless-NGX AI (업데이트 버전)</title>
		<link>https://wp.choiandwang.synology.me/2025/10/04/paperless-ngx-ai/</link>
		
		<dc:creator><![CDATA[tony]]></dc:creator>
		<pubDate>Sat, 04 Oct 2025 16:00:37 +0000</pubDate>
				<category><![CDATA[Docker]]></category>
		<category><![CDATA[Synology]]></category>
		<category><![CDATA[docker]]></category>
		<category><![CDATA[paperless]]></category>
		<category><![CDATA[paperless ngx]]></category>
		<category><![CDATA[paperless ngx AI]]></category>
		<guid isPermaLink="false">https://wp.choiandwang.synology.me/?p=3154</guid>

					<description><![CDATA[Paperless 도커에서 한단계 더 진화한 AI 기능 문서를 디지털화하고 관리하는 것은 현대 업무 환경에서 필수가 되었습니다. 이번에는 Paperless-NGX에 AI 기능을 추가하여 문서 관리를 한 단계 더 발전시킨 설정을 소개합니다 Paperless-NGX란? Paperless-NGX는 종이 문서를 스캔하고 디지털화하여 관리할 수 있는 오픈소스 문서 관리 시스템입니다. OCR(광학 문자 인식) 기술을 활용해 스캔한 문서를 검색 가능한 형태로 저장하고, 태그와 메타데이터로 체계적으로 정리할 수 있습니다. AI 기능의 추가: 무엇이 달라졌나? 이번 업데이트의 핵심은 paperlessngx-ai 컨테이너의 추가입니다. 이 서비스는 OpenAI API를 활용하여 문서에 자동으로 태그를 지정하고, 문서의 내용을 분석하여 적절한 분류를 제안합니다. AI 기능의 장점 자동 태그 지정의 편리함문서를 업로드하면 AI가 내용을 분석하여 자동으로 관련 태그를 제안합니다. 수백 개의 문서를 일일이 분류하던 시간을 대폭 줄일 수 있습니다. 청구서, 계약서, 영수증 등 문서 유형을 자동으로 파악하고 적절한 카테고리에 배치합니다. 향상된 검색 기능AI가 문서의 맥락을 이해하기 때문에, 단순 키워드 검색을 넘어 의미 기반 검색이 가능합니다. &#8220;지난해 전기 요금 관련 문서&#8221;처럼 자연어로 검색할 수 있는 기반이 마련됩니다. 미래 지향적 접근AI를 활용한 문서 관리는 이제 선택이 아닌 필수가 되어가고 있습니다. 이런 방식이 앞으로 문서 관리의 표준이 될 것으로 예상됩니다. Docker Compose 구성 분석 핵심 서비스 구성 이번 설정은 4개의 주요 서비스로 구성됩니다: Redis (캐시 및 작업 큐)세션 데이터와 작업 큐를 관리하는 인메모리 데이터베이스입니다. 512MB의 메모리 제한으로 효율적으로 운영되며, 비밀번호 인증을 통해 보안을 강화했습니다. PostgreSQL (데이터베이스)문서 메타데이터, 사용자 정보, 태그 등 모든 구조화된 데이터를 저장합니다. 1GB 메모리 할당으로 안정적인 데이터베이스 운영을 보장합니다. Paperless-NGX (메인 애플리케이션)문서 처리와 OCR의 핵심 서비스입니다. 6GB의 메모리를 할당하여 대용량 문서 처리가 가능하며, 다양한 볼륨 마운트를 통해 문서를 체계적으로 관리합니다. Paperless-AI (새로운 AI 서비스)OpenAI API를 활용한 자동 태그 지정 및 문서 분석 서비스입니다. Paperless-NGX와 연동되어 문서가 업로드되면 자동으로 분석을 시작합니다. 주목할 만한 설정 파일명 자동 정리 이 설정은 문서를 연도별, 발신자별, 문서 유형별로 자동 분류하여 저장합니다. 나중에 파일을 직접 찾아야 할 때도 쉽게 찾을 수 있습니다. AI 서비스 환경 변수OpenAI API 키와 모델 설정을 통해 원하는 수준의 AI 분석을 구성할 수 있습니다. GPT-4를 사용하면 더 정확한 분석이 가능하지만, GPT-3.5-turbo로도 충분히 유용한 결과를 얻을 수 있습니다. 실제 사용 경험과 기대 종이 없는 환경의 실현 더 이상 서랍 가득한 서류 더미를 뒤적일 필요가 없습니다. 스캔만 하면 모든 문서가 디지털화되고, AI가 자동으로 정리해줍니다. 필요한 문서는 몇 초 만에 검색할 수 있습니다. 현재의 한계와 미래의 가능성 아직 AI 태그 지정이 100% 완벽하지는 않습니다. 특히 전문적인 기술 문서나 특수한 형식의 문서에서는 수동 보정이 필요할 수 있습니다. 하지만 다음과 같은 개선이 이루어진다면 더욱 강력한 도구가 될 것입니다: 시작하기 기본적인 구성은 이렇게 설정하였는데 개인의 맞게 변형하시면 좋겠습니다. version: &#8220;3.9&#8221; networks: paper_net: driver: bridge services: redis: image: redis:8 command: &#8211; /bin/sh &#8211; -c &#8211; redis-server &#8211;requirepass redispass container_name: PaperlessNGX-REDIS hostname: paper-redis mem_limit: 512m mem_reservation: 256m cpu_shares: 768 security_opt: &#8211; no-new-privileges:true read_only: true user: healthcheck: test: [&#8220;CMD-SHELL&#8221;, &#8220;redis-cli ping &#124;&#124; exit 1&#8221;] volumes: &#8211; /volume1/docker/paperlessngx/redis:/data:rw environment: TZ: America/Chicago restart: unless-stopped networks: &#8211; paper_net db: image: postgres:17 container_name: PaperlessNGX-DB hostname: paper-db mem_limit: 1g cpu_shares: 768 security_opt: &#8211; no-new-privileges:true healthcheck: test: [&#8220;CMD&#8221;, &#8220;pg_isready&#8221;, &#8220;-q&#8221;, &#8220;-d&#8221;, &#8220;paperless&#8221;, &#8220;-U&#8221;, &#8220;paperlessuser&#8221;] timeout: 45s interval: 10s retries: 10 volumes: &#8211; /volume1/docker/paperlessngx/db:/var/lib/postgresql/data:rw environment: POSTGRES_DB: POSTGRES_USER: POSTGRES_PASSWORD: restart: unless-stopped networks: &#8211; paper_net paperless: image: ghcr.io/paperless-ngx/paperless-ngx:latest container_name: PaperlessNGX hostname: paperless-ngx mem_limit: 6g cpu_shares: 1024 security_opt: &#8211; no-new-privileges:true healthcheck: test: [&#8220;CMD&#8221;, &#8220;curl&#8221;, &#8220;-fs&#8221;, &#8220;-S&#8221;, &#8220;&#8211;max-time&#8221;, &#8220;2&#8221;, &#8220;http://localhost:8000&#8221;] interval: 30s timeout: 10s retries: 5 ports: &#8211; 8777:8000 volumes: &#8211; /volume2/docker/paperlessngx/data:/usr/src/paperless/data:rw &#8211; /volume2/docker/paperlessngx/media:/usr/src/paperless/media:rw &#8211; /volume2/docker/paperlessngx/export:/usr/src/paperless/export:rw &#8211; /volume2/docker/paperlessngx/consume:/usr/src/paperless/consume:rw &#8211; /volume2/docker/paperlessngx/trash:/usr/src/paperless/trash:rw environment: PAPERLESS_REDIS: redis://:redispass@paper-redis:6379 PAPERLESS_DBENGINE: postgresql PAPERLESS_DBHOST: paper-db PAPERLESS_DBNAME: PAPERLESS_DBUSER: PAPERLESS_DBPASS: PAPERLESS_EMPTY_TRASH_DIR: ../trash PAPERLESS_FILENAME_FORMAT: &#8216;{{ created_year }}/{{ correspondent }}/{{ document_type }}/{{ title }}&#8217; PAPERLESS_OCR_ROTATE_PAGES_THRESHOLD: 6 PAPERLESS_TASK_WORKERS: 1 USERMAP_UID: USERMAP_GID: PAPERLESS_TIME_ZONE: PAPERLESS_ADMIN_USER: PAPERLESS_ADMIN_PASSWORD: PAPERLESS_URL: http://192.168.1.3:8777 PAPERLESS_CSRF_TRUSTED_ORIGINS: PAPERLESS_OCR_LANGUAGE: eng restart: unless-stopped depends_on: db: condition: service_healthy redis: condition: service_healthy networks: &#8211; paper_net paperlessngx-ai: image: clusterzx/paperless-ai container_name: PaperlessNGX-AI networks: &#8211; paper_net security_opt: &#8211; no-new-privileges:true user: &#8220;0:0&#8221; ports: &#8211; &#8220;3747:3000&#8221; volumes: &#8211; /volume1/docker/paperlessngxai:/app/data:rw &#8211; /volume1/docker/paperlessngxai/logs:/app/logs:rw &#8211; type: tmpfs target: /root/.pm2 &#8211; type: tmpfs target: /tmp &#8211; type: tmpfs target: /.pm2 healthcheck: test: [&#8220;CMD-SHELL&#8221;, &#8220;curl -fsS http://127.0.0.1:3000/ &#124;&#124; exit 1&#8221;] interval: 15s timeout: 5s retries: 5 start_period: 120s environment: TZ: America/Chicago PM2_HOME: /.pm2 HOME: /tmp OPENAI_BASE_URL: OPENAI_API_KEY: INFERENCE_TEXT_MODEL: PAPERLESS_API_URL: http://paperless:8000 PAPERLESS_API_TOKEN: restart: unless-stopped depends_on: paperless: condition: service_started 위의 Docker Compose 파일을 사용하려면 다음 환경 변수들을 설정해야 합니다: 모든 설정이 완료되면 docker-compose up -d 명령으로 서비스를 시작할 수 있습니다. 마무리 Paperless-NGX에 AI 기능을 추가하는 것은 단순한 기능 추가가 아닙니다. 문서 관리 방식 자체를 변화시키는 진화입니다. 자동화된 태그 지정은 시간을 절약하고, 더 나은 검색 경험은 생산성을 높입니다. 아직 완벽하지는 않지만, AI 기술의 발전과 함께 이 시스템도 계속 개선될 것입니다. 종이 없는 환경을 구축하고 싶다면, 지금이 바로 시작할 때입니다.]]></description>
										<content:encoded><![CDATA[
<h1 class="wp-block-heading">Paperless 도커에서 한단계 더 진화한 AI 기능</h1>



<p>문서를 디지털화하고 관리하는 것은 현대 업무 환경에서 필수가 되었습니다. 이번에는 Paperless-NGX에 AI 기능을 추가하여 문서 관리를 한 단계 더 발전시킨 설정을 소개합니다</p>



<h2 class="wp-block-heading">Paperless-NGX란?</h2>



<figure class="wp-block-image size-full"><img fetchpriority="high" decoding="async" width="418" height="120" src="https://wp.choiandwang.synology.me/wp-content/uploads/2025/10/image-15.png" alt="" class="wp-image-3157" srcset="https://wp.choiandwang.synology.me/wp-content/uploads/2025/10/image-15.png 418w, https://wp.choiandwang.synology.me/wp-content/uploads/2025/10/image-15-300x86.png 300w" sizes="(max-width: 418px) 100vw, 418px" /></figure>



<p>Paperless-NGX는 종이 문서를 스캔하고 디지털화하여 관리할 수 있는 오픈소스 문서 관리 시스템입니다. OCR(광학 문자 인식) 기술을 활용해 스캔한 문서를 검색 가능한 형태로 저장하고, 태그와 메타데이터로 체계적으로 정리할 수 있습니다.</p>



<figure class="wp-block-image size-full"><img decoding="async" width="265" height="190" src="https://wp.choiandwang.synology.me/wp-content/uploads/2025/10/image-16.png" alt="" class="wp-image-3158"/></figure>



<h2 class="wp-block-heading">AI 기능의 추가: 무엇이 달라졌나?</h2>



<p>이번 업데이트의 핵심은 <strong>paperlessngx-ai</strong> 컨테이너의 추가입니다. 이 서비스는 OpenAI API를 활용하여 문서에 자동으로 태그를 지정하고, 문서의 내용을 분석하여 적절한 분류를 제안합니다.</p>



<h3 class="wp-block-heading">AI 기능의 장점</h3>



<p><strong>자동 태그 지정의 편리함</strong><br>문서를 업로드하면 AI가 내용을 분석하여 자동으로 관련 태그를 제안합니다. 수백 개의 문서를 일일이 분류하던 시간을 대폭 줄일 수 있습니다. 청구서, 계약서, 영수증 등 문서 유형을 자동으로 파악하고 적절한 카테고리에 배치합니다.</p>



<p><strong>향상된 검색 기능</strong><br>AI가 문서의 맥락을 이해하기 때문에, 단순 키워드 검색을 넘어 의미 기반 검색이 가능합니다. &#8220;지난해 전기 요금 관련 문서&#8221;처럼 자연어로 검색할 수 있는 기반이 마련됩니다.</p>



<p><strong>미래 지향적 접근</strong><br>AI를 활용한 문서 관리는 이제 선택이 아닌 필수가 되어가고 있습니다. 이런 방식이 앞으로 문서 관리의 표준이 될 것으로 예상됩니다.</p>



<figure class="wp-block-image size-large"><img decoding="async" width="356" height="1024" src="https://wp.choiandwang.synology.me/wp-content/uploads/2025/10/image-14-356x1024.png" alt="" class="wp-image-3156" srcset="https://wp.choiandwang.synology.me/wp-content/uploads/2025/10/image-14-356x1024.png 356w, https://wp.choiandwang.synology.me/wp-content/uploads/2025/10/image-14-104x300.png 104w, https://wp.choiandwang.synology.me/wp-content/uploads/2025/10/image-14-768x2209.png 768w, https://wp.choiandwang.synology.me/wp-content/uploads/2025/10/image-14-534x1536.png 534w, https://wp.choiandwang.synology.me/wp-content/uploads/2025/10/image-14-712x2048.png 712w, https://wp.choiandwang.synology.me/wp-content/uploads/2025/10/image-14.png 890w" sizes="(max-width: 356px) 100vw, 356px" /></figure>



<h2 class="wp-block-heading">Docker Compose 구성 분석</h2>



<h3 class="wp-block-heading">핵심 서비스 구성</h3>



<p>이번 설정은 4개의 주요 서비스로 구성됩니다:</p>



<p><strong>Redis (캐시 및 작업 큐)</strong><br>세션 데이터와 작업 큐를 관리하는 인메모리 데이터베이스입니다. 512MB의 메모리 제한으로 효율적으로 운영되며, 비밀번호 인증을 통해 보안을 강화했습니다.</p>



<p><strong>PostgreSQL (데이터베이스)</strong><br>문서 메타데이터, 사용자 정보, 태그 등 모든 구조화된 데이터를 저장합니다. 1GB 메모리 할당으로 안정적인 데이터베이스 운영을 보장합니다.</p>



<p><strong>Paperless-NGX (메인 애플리케이션)</strong><br>문서 처리와 OCR의 핵심 서비스입니다. 6GB의 메모리를 할당하여 대용량 문서 처리가 가능하며, 다양한 볼륨 마운트를 통해 문서를 체계적으로 관리합니다.</p>



<p><strong>Paperless-AI (새로운 AI 서비스)</strong><br>OpenAI API를 활용한 자동 태그 지정 및 문서 분석 서비스입니다. Paperless-NGX와 연동되어 문서가 업로드되면 자동으로 분석을 시작합니다.</p>



<h3 class="wp-block-heading">주목할 만한 설정</h3>



<p><strong>파일명 자동 정리</strong></p>



<pre class="wp-block-code"><code>PAPERLESS_FILENAME_FORMAT: '{{ created_year }}/{{ correspondent }}/{{ document_type }}/{{ title }}'
</code></pre>



<p>이 설정은 문서를 연도별, 발신자별, 문서 유형별로 자동 분류하여 저장합니다. 나중에 파일을 직접 찾아야 할 때도 쉽게 찾을 수 있습니다.</p>



<p><strong>AI 서비스 환경 변수</strong><br>OpenAI API 키와 모델 설정을 통해 원하는 수준의 AI 분석을 구성할 수 있습니다. GPT-4를 사용하면 더 정확한 분석이 가능하지만, GPT-3.5-turbo로도 충분히 유용한 결과를 얻을 수 있습니다.</p>



<h2 class="wp-block-heading">실제 사용 경험과 기대</h2>



<h3 class="wp-block-heading">종이 없는 환경의 실현</h3>



<p>더 이상 서랍 가득한 서류 더미를 뒤적일 필요가 없습니다. 스캔만 하면 모든 문서가 디지털화되고, AI가 자동으로 정리해줍니다. 필요한 문서는 몇 초 만에 검색할 수 있습니다.</p>



<h3 class="wp-block-heading">현재의 한계와 미래의 가능성</h3>



<p>아직 AI 태그 지정이 100% 완벽하지는 않습니다. 특히 전문적인 기술 문서나 특수한 형식의 문서에서는 수동 보정이 필요할 수 있습니다. 하지만 다음과 같은 개선이 이루어진다면 더욱 강력한 도구가 될 것입니다:</p>



<ul class="wp-block-list">
<li>학습 기능: 사용자의 수정 내역을 학습하여 점점 더 정확한 태그 제안</li>



<li>다국어 지원 강화: 한국어 문서 분석 정확도 향상</li>



<li>문서 간 연관성 분석: 관련 문서를 자동으로 연결</li>



<li>요약 기능: 긴 문서의 핵심 내용 자동 추출</li>
</ul>



<h2 class="wp-block-heading">시작하기</h2>



<p>기본적인 구성은 이렇게 설정하였는데 개인의 맞게 변형하시면 좋겠습니다.</p>



<div class="wp-block-group is-vertical is-layout-flex wp-container-core-group-is-layout-fe9cc265 wp-block-group-is-layout-flex">
<p>version: &#8220;3.9&#8221;</p>



<p>networks:</p>



<p>paper_net:</p>



<p>driver: bridge</p>



<p>services:</p>



<p>redis:</p>



<p>image: redis:8</p>



<p>command:</p>



<p>&#8211; /bin/sh</p>



<p>&#8211; -c</p>



<p>&#8211; redis-server &#8211;requirepass redispass</p>



<p>container_name: PaperlessNGX-REDIS</p>



<p>hostname: paper-redis</p>



<p>mem_limit: 512m</p>



<p>mem_reservation: 256m</p>



<p>cpu_shares: 768</p>



<p>security_opt:</p>



<p>&#8211; no-new-privileges:true</p>



<p>read_only: true</p>



<p>user:</p>



<p>healthcheck:</p>



<p>test: [&#8220;CMD-SHELL&#8221;, &#8220;redis-cli ping || exit 1&#8221;]</p>



<p>volumes:</p>



<p>&#8211; /volume1/docker/paperlessngx/redis:/data:rw</p>



<p>environment:</p>



<p>TZ: America/Chicago</p>



<p>restart: unless-stopped</p>



<p>networks:</p>



<p>&#8211; paper_net</p>



<p>db:</p>



<p>image: postgres:17</p>



<p>container_name: PaperlessNGX-DB</p>



<p>hostname: paper-db</p>



<p>mem_limit: 1g</p>



<p>cpu_shares: 768</p>



<p>security_opt:</p>



<p>&#8211; no-new-privileges:true</p>



<p>healthcheck:</p>



<p>test: [&#8220;CMD&#8221;, &#8220;pg_isready&#8221;, &#8220;-q&#8221;, &#8220;-d&#8221;, &#8220;paperless&#8221;, &#8220;-U&#8221;, &#8220;paperlessuser&#8221;]</p>



<p>timeout: 45s</p>



<p>interval: 10s</p>



<p>retries: 10</p>



<p>volumes:</p>



<p>&#8211; /volume1/docker/paperlessngx/db:/var/lib/postgresql/data:rw</p>



<p>environment:</p>



<p>POSTGRES_DB:</p>



<p>POSTGRES_USER:</p>



<p>POSTGRES_PASSWORD:</p>



<p>restart: unless-stopped</p>



<p>networks:</p>



<p>&#8211; paper_net</p>



<p>paperless:</p>



<p>image: ghcr.io/paperless-ngx/paperless-ngx:latest</p>



<p>container_name: PaperlessNGX</p>



<p>hostname: paperless-ngx</p>



<p>mem_limit: 6g</p>



<p>cpu_shares: 1024</p>



<p>security_opt:</p>



<p>&#8211; no-new-privileges:true</p>



<p>healthcheck:</p>



<p>test: [&#8220;CMD&#8221;, &#8220;curl&#8221;, &#8220;-fs&#8221;, &#8220;-S&#8221;, &#8220;&#8211;max-time&#8221;, &#8220;2&#8221;, &#8220;http://localhost:8000&#8221;]</p>



<p>interval: 30s</p>



<p>timeout: 10s</p>



<p>retries: 5</p>



<p>ports:</p>



<p>&#8211; 8777:8000</p>



<p>volumes:</p>



<p>&#8211; /volume2/docker/paperlessngx/data:/usr/src/paperless/data:rw</p>



<p>&#8211; /volume2/docker/paperlessngx/media:/usr/src/paperless/media:rw</p>



<p>&#8211; /volume2/docker/paperlessngx/export:/usr/src/paperless/export:rw</p>



<p>&#8211; /volume2/docker/paperlessngx/consume:/usr/src/paperless/consume:rw</p>



<p>&#8211; /volume2/docker/paperlessngx/trash:/usr/src/paperless/trash:rw</p>



<p>environment:</p>



<p>PAPERLESS_REDIS: redis://:redispass@paper-redis:6379</p>



<p>PAPERLESS_DBENGINE: postgresql</p>



<p>PAPERLESS_DBHOST: paper-db</p>



<p>PAPERLESS_DBNAME:</p>



<p>PAPERLESS_DBUSER:</p>



<p>PAPERLESS_DBPASS:</p>



<p>PAPERLESS_EMPTY_TRASH_DIR: ../trash</p>



<p>PAPERLESS_FILENAME_FORMAT: &#8216;{{ created_year }}/{{ correspondent }}/{{ document_type }}/{{ title }}&#8217;</p>



<p>PAPERLESS_OCR_ROTATE_PAGES_THRESHOLD: 6</p>



<p>PAPERLESS_TASK_WORKERS: 1</p>



<p>USERMAP_UID:</p>



<p>USERMAP_GID:</p>



<p>PAPERLESS_TIME_ZONE:</p>



<p>PAPERLESS_ADMIN_USER:</p>



<p>PAPERLESS_ADMIN_PASSWORD:</p>



<p>PAPERLESS_URL: http://192.168.1.3:8777</p>



<p>PAPERLESS_CSRF_TRUSTED_ORIGINS:</p>



<p>PAPERLESS_OCR_LANGUAGE: eng</p>



<p>restart: unless-stopped</p>



<p>depends_on:</p>



<p>db:</p>



<p>condition: service_healthy</p>



<p>redis:</p>



<p>condition: service_healthy</p>



<p>networks:</p>



<p>&#8211; paper_net</p>



<p>paperlessngx-ai:</p>



<p>image: clusterzx/paperless-ai</p>



<p>container_name: PaperlessNGX-AI</p>



<p>networks:</p>



<p>&#8211; paper_net</p>



<p>security_opt:</p>



<p>&#8211; no-new-privileges:true</p>



<p>user: &#8220;0:0&#8221;</p>



<p>ports:</p>



<p>&#8211; &#8220;3747:3000&#8221;</p>



<p>volumes:</p>



<p>&#8211; /volume1/docker/paperlessngxai:/app/data:rw</p>



<p>&#8211; /volume1/docker/paperlessngxai/logs:/app/logs:rw</p>



<p>&#8211; type: tmpfs</p>



<p>target: /root/.pm2</p>



<p>&#8211; type: tmpfs</p>



<p>target: /tmp</p>



<p>&#8211; type: tmpfs</p>



<p>target: /.pm2</p>



<p>healthcheck:</p>



<p>test: [&#8220;CMD-SHELL&#8221;, &#8220;curl -fsS http://127.0.0.1:3000/ || exit 1&#8221;]</p>



<p>interval: 15s</p>



<p>timeout: 5s</p>



<p>retries: 5</p>



<p>start_period: 120s</p>



<p>environment:</p>



<p>TZ: America/Chicago</p>



<p>PM2_HOME: /.pm2</p>



<p>HOME: /tmp</p>



<p>OPENAI_BASE_URL:</p>



<p>OPENAI_API_KEY:</p>



<p>INFERENCE_TEXT_MODEL:</p>



<p>PAPERLESS_API_URL: http://paperless:8000</p>



<p>PAPERLESS_API_TOKEN:</p>



<p>restart: unless-stopped</p>



<p>depends_on:</p>



<p>paperless:</p>



<p>condition: service_started</p>
</div>



<p>위의 Docker Compose 파일을 사용하려면 다음 환경 변수들을 설정해야 합니다:</p>



<ul class="wp-block-list">
<li>데이터베이스 관련: <code>POSTGRES_DB</code>, <code>POSTGRES_USER</code>, <code>POSTGRES_PASSWORD</code></li>



<li>Paperless 관리자: <code>PAPERLESS_ADMIN_USER</code>, <code>PAPERLESS_ADMIN_PASSWORD</code></li>



<li>시스템 설정: <code>USERMAP_UID</code>, <code>USERMAP_GID</code>, <code>PAPERLESS_TIME_ZONE</code></li>



<li>AI 서비스: <code>OPENAI_API_KEY</code>, <code>OPENAI_BASE_URL</code>, <code>INFERENCE_TEXT_MODEL</code>, <code>PAPERLESS_API_TOKEN</code></li>
</ul>



<p>모든 설정이 완료되면 <code>docker-compose up -d</code> 명령으로 서비스를 시작할 수 있습니다.</p>



<h2 class="wp-block-heading">마무리</h2>



<p>Paperless-NGX에 AI 기능을 추가하는 것은 단순한 기능 추가가 아닙니다. 문서 관리 방식 자체를 변화시키는 진화입니다. 자동화된 태그 지정은 시간을 절약하고, 더 나은 검색 경험은 생산성을 높입니다.</p>



<p>아직 완벽하지는 않지만, AI 기술의 발전과 함께 이 시스템도 계속 개선될 것입니다. 종이 없는 환경을 구축하고 싶다면, 지금이 바로 시작할 때입니다.</p>



<p></p>
]]></content:encoded>
					
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">3154</post-id>	</item>
	</channel>
</rss>
