Setting Up Nextcloud with Docker on an Old Laptop — Your Own Google Drive in 30 Minutes
Ubuntu Server 24.04와 Docker Compose를 사용해 구형 노트북에 Nextcloud 개인 클라우드 서버 30분 내 구축
AI 요약
Context
Google One과 같은 상용 클라우드 스토리지 서비스의 지속적인 구독료 부담과 데이터 소유권 문제를 해결하기 위해 자체 호스팅 솔루션이 필요했다. 기존 관리형 클라우드 서비스는 외부 서버 의존성으로 인한 접근성 제약과 개인정보 제어 불가능성이라는 한계가 있었다.
Technical Solution
- 정적 IP 주소 설정: netplan을 통해 192.168.1.100 고정 IP 할당으로 서버 재부팅 후에도 항상 동일한 주소 유지
- Docker 및 docker-compose 설치: 우분투 패키지 매니저로 Docker 엔진 설치 및 자동 실행 설정으로 컨테이너 기반 배포 구현
- 스토리지 디렉토리 구조 생성: /srv/nas 경로 하위에 photos, videos, documents, nextcloud 폴더 생성 및 www-data 사용자에게 권한 할당
- Docker Compose 파일 구성: nextcloud:latest 이미지 사용, 포트 8888:80 매핑, /srv/nas를 /var/www/html/data로 볼륨 마운트, NEXTCLOUD_TRUSTED_DOMAINS=192.168.1.100 환경 변수 설정
- 자동 시작 및 복구: restart:always 옵션으로 컨테이너 충돌 시 자동 재시작 및 서버 부팅 후 자동 실행 구현
Impact
아티클에서 제시한 설정 시간은 총 30분이며, Ubuntu Server 설치에 약 15분, 나머지 Docker 및 Nextcloud 구성에 약 15분 소요. 저장소 부족 시 외부 USB 드라이브(약 ₹4,000, 1TB) 마운트로 용량을 즉시 2배 증가 가능.
Key Takeaway
Docker 컨테이너 기반 배포는 구형 하드웨어(4GB 이상 RAM)에서도 개인 클라우드 인프라를 신속하게 구축할 수 있으며, 표준 Linux 디렉토리 규칙(/srv/nas)과 DHCP 범위 외부 IP 할당(192.168.1.100)을 준수하면 가정 네트워크 환경에서 안정적인 서비스 운영이 가능하다.
실천 포인트
가정용 홈서버를 구축해야 하는 엔지니어는 Docker Compose 파일에서 볼륨 마운트(./config:/var/www/html, /srv/nas:/var/www/html/data)와 NEXTCLOUD_TRUSTED_DOMAINS 환경 변수를 올바르게 설정하고, 라우터의 DHCP 범위 밖에 정적 IP를 할당하면(예: 192.168.1.100), 네트워크 재연결 없이 안정적인 개인 클라우드를 운영할 수 있다.