Nextcloud와 OpenMediaVault 조합으로 나만의 클라우드 구축하기
Nextcloud와 OpenMediaVault (OMV)는 모두 강력한 오픈 소스 소프트웨어입니다. 이 두 가지를 함께 사용하면 네트워크 연결 스토리지(NAS)와 개인 클라우드 스토리지를 구축하고 관리할 수 있는 직관적인 웹 인터페이스를 얻을 수 있습니다.
OpenMediaVault에 Nextcloud를 설치하면, USB 드라이브를 포함한 모든 내부 또는 외부 저장 장치에 파일을 저장하고, 어디서든 접근하고 공유할 수 있습니다. 이 모든 과정에서 데이터에 대한 완벽한 제어권을 유지할 수 있습니다.
Nextcloud는 Docker 컨테이너를 통해 Raspberry Pi에 직접 설치하거나 Raspberry Pi OS에 직접 설치할 수도 있습니다. 하지만 OpenMediaVault를 통해 설치하면 안전한 데이터 저장과 클라우드 기능이 결합되어 더 쉽게 데이터에 접근하고 협업할 수 있습니다.
OMV를 사용하여 Raspberry Pi에서 Nextcloud를 호스팅하면 다음과 같은 이점이 있습니다:
- 데이터 개인 정보 보호 및 소유권을 위해 제3자 클라우드 제공업체에 의존하지 않아도 되므로 데이터와 개인 정보를 완전히 제어할 수 있습니다.
- OMV는 공유 스토리지에 접근할 수 있는 사용자를 관리하고 권한을 제어할 수 있는 기능도 제공합니다. Nextcloud는 이러한 기능을 확장하여 파일, 폴더 및 공유 자원에 대한 세분화된 접근 권한 제어를 가능하게 합니다.
- Nextcloud 데이터에 대한 자동화된 데이터 백업을 설정하고 실행하여 파일에 대한 추가적인 데이터 보호 계층을 추가할 수 있습니다.
- 외장 USB 저장 장치를 간편하게 추가/제거하거나, 외장 드라이브의 공유 폴더에 Nextcloud 데이터를 저장하고 실행할 수 있습니다.
최적의 성능을 위해서는 SSD에 Raspberry Pi OS를 설치하는 것이 좋습니다. 물론 Raspberry Pi OS에 직접 Nextcloud를 설치하여 원격으로 접근 가능한 개인 DIY 클라우드 스토리지를 구축하는 것도 가능합니다.
Nextcloud 설치 및 설정을 시작하기 전에 OpenMediaVault 장치(예: Raspberry Pi)에 고정 IP 주소를 할당해야 합니다. Nextcloud가 제대로 작동하려면 일관된 IP 주소가 필수적입니다.
1단계: SSH 활성화
원격 접속을 위해 SSH(Secure Shell)를 활성화하는 방법은 다음과 같습니다.
- OpenMediaVault에서 “서비스”로 이동하여 “SSH”를 클릭합니다.
- “루트 로그인 허용”, “비밀번호 인증” 및 “공개 키 인증”을 선택하고 “저장”을 클릭합니다.
- 변경 사항을 적용하려면 “적용”(노란색 막대의 확인 버튼)을 클릭합니다.
- Windows의 PuTTY 또는 Linux/macOS의 터미널을 사용하여 OpenMediaVault에 루트로 로그인합니다. 루트 비밀번호를 모르는 경우 sudo 사용자로 로그인한 다음 다음 명령을 사용하여 루트 비밀번호를 변경합니다.
passwd root
- 루트 사용자로 로그인하려면 “su root”를 입력합니다.
다른 컴퓨터에서 Raspberry Pi에 SSH로 접속한 후, 다음 명령을 실행하여 OMV 추가 기능을 설치합니다.
wget -O - https:
설치 후 OpenMediaVault 웹 인터페이스를 새로고침하거나 다시 로그인한 다음 “플러그인”으로 이동합니다.
“openmediavault-compose xxx” 플러그인을 찾아 설치합니다.

3단계: Docker 및 Portainer 설치
OpenMediaVault의 “서비스” 섹션 아래에 “Compose”라는 새로운 항목이 나타납니다. 이제 이를 사용하여 Nextcloud 설치에 필요한 Docker와 Portainer를 설치합니다.
- “Compose” > “설정”을 클릭합니다.
- “파일 작성” 드롭다운에서 공유 폴더를 선택합니다. 공유 폴더가 없다면 “+” 아이콘을 사용하거나 “저장소” > “공유 폴더” 옵션을 통해 생성하는 것이 좋습니다.
- “데이터” 섹션에서 내부 저장 장치 또는 외부 USB 드라이브에 생성한 공유 폴더를 선택합니다. 데이터 저장을 위해 외장 HDD를 사용하는 것을 권장합니다.
- 선택적으로 백업 위치를 지정할 수도 있습니다. 이를 위해 내부 또는 외부 드라이브에 다른 공유 폴더를 만들고 선택할 수 있습니다.
- 이제 “Docker 재설치”를 클릭합니다.
- 메시지가 나타나면 “예”를 클릭합니다. 설치가 완료될 때까지 기다립니다.
설치 과정 중 연결 끊김 오류가 발생할 수 있습니다. 이 경우 페이지를 새로 고치고 다시 시도해 보세요. 상태 섹션에 “설치됨, 실행 중”이 표시되면 SSH 연결을 열고 다음 명령을 실행하여 Portainer를 설치합니다.
docker run -d -p 8000:8000 -p 9443:9443 --name portainer --restart=always -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data portainer/portainer-ce:latest

설치 후 https://IPAddressOfPi:9443으로 이동합니다. 사용자 이름과 비밀번호를 반드시 변경하십시오.
4단계: MariaDB 데이터베이스 생성
Portainer에서 “스택” > “스택 추가”를 클릭한 후 다음 코드를 웹 편집기에 붙여넣습니다.
version: '2'services: db: image: mariadb:10.5 restart: always command: --transaction-isolation=READ-COMMITTED --binlog-format=ROW volumes: - /var/lib/docker/volumes/Nextcloud_Database:/var/lib/mysql environment: - MYSQL_ROOT_PASSWORD=password - MYSQL_PASSWORD=password - MYSQL_DATABASE=nextcloud - MYSQL_USER=nextcloud
스택에 ‘mariadb’와 같은 적절한 이름을 지정하십시오. 또한 비밀번호와 데이터베이스 이름을 원하는 대로 변경하십시오.
“스택 배포”를 클릭합니다.

이제 Nextcloud 설정에 필요한 MariaDB 데이터베이스가 설치되고 실행됩니다.
또는 SSH를 통해 MariaDB 서버를 수동으로 설치하고 데이터베이스와 데이터베이스 사용자를 직접 만들 수도 있습니다.
기본적으로 OpenMediaVault는 포트 80에서 실행됩니다. 하지만 OpenMediaVault 포트를 8090과 같은 다른 포트로 변경하는 것을 권장합니다. 이렇게 하면 Nextcloud에서 포트 80을 사용할 수 있습니다. 변경 방법은 다음과 같습니다.
- OpenMediaVault에서 “시스템” > “워크벤치”로 이동합니다.
- 포트를 8090으로 변경하고 “저장”을 클릭합니다.
- “적용”을 클릭하고 변경 사항이 적용될 때까지 기다립니다.
- 이제 http://IPAdressOfPi:8090 에서 OpenMediaVault에 접속할 수 있습니다.
Raspberry Pi에서 실행되는 OpenMediaVault에 Nextcloud를 설치하고 설정하려면 다음 단계를 따르세요.
- Portainer에 로그인한 후 “볼륨” > “볼륨 추가”를 클릭합니다. “nextcloud_config” 및 “nextcloud_data”라는 두 개의 볼륨을 생성합니다. 볼륨 이름을 입력하고 “볼륨 생성”을 클릭하면 됩니다.
- “컨테이너” > “컨테이너 추가”를 클릭합니다.
- 컨테이너 이름을 “Nextcloud”로 지정하고 “이미지” 필드에 다음을 붙여넣습니다.
linuxserver/nextcloud
- “네트워크 포트 구성”에서 “+ 새 네트워크 포트 게시”를 클릭합니다.
- “호스트”와 “컨테이너(TCP)”에 각각 8080과 80을 입력합니다.
- “볼륨” 아래에서 “+ 추가 볼륨 매핑”을 두 번 클릭합니다.
- 첫 번째 매핑에 “/config”를 입력하고 “nextcloud_config” 볼륨을 선택합니다. 두 번째 매핑에 “/data”를 입력하고 “nextcloud_data” 볼륨을 선택합니다.
- “네트워크”로 이동하여 “호스트”를 선택합니다.
- “다시 시작 정책”에서 “중지되지 않는 한”을 선택합니다.
- “컨테이너 배포”를 클릭합니다.
- 몇 초 또는 몇 분 후(인터넷 속도에 따라) Nextcloud 컨테이너가 배포됩니다.
- 이제 http://IPAddressOfPi를 방문하여 Nextcloud 웹 인터페이스를 열 수 있습니다.
- 사용자 이름과 비밀번호를 입력합니다.
- 데이터 폴더 위치를 입력합니다. 기본값은 “/data”입니다.
- “MySQL/MariaDB”를 선택합니다. 4단계에서 배포된 MariaDB 스택의 데이터베이스 이름과 비밀번호를 입력합니다.
- 데이터베이스 연결에 오류가 발생하면 데이터베이스 호스트에 “mariadb”를 입력해 보십시오.
- “설치”를 클릭합니다. 그러면 Nextcloud 인스턴스가 설치됩니다.
이제 Pi의 로컬 IP 주소로 Nextcloud에 접속하여 로그인할 수 있습니다. macOS, Windows, Linux 등 집안의 모든 시스템에서 Nextcloud에 파일을 업로드하고 다운로드할 수 있습니다. 또한 사진, 비디오, 문서 및 기타 데이터를 모바일 장치와 동기화하는 데 사용할 수 있는 Android 및 iOS 장치용 Nextcloud 앱도 제공됩니다.
Nextcloud를 인터넷에 노출하려면 Nginx 역방향 프록시, Cloudflare Tunnel 또는 라우터(포트 포워딩)를 사용할 수 있습니다.
셀프 호스팅 클라우드의 잠재력 활용하기
Raspberry Pi에서 실행되는 OpenMediaVault NAS에 Nextcloud를 설치하면 저렴하면서도 강력하고 안전한 개인 클라우드 스토리지 솔루션을 구축할 수 있습니다. OpenMediaVault NAS에서 Nextcloud를 사용하면 외부 제공업체에 의존하지 않고도 데이터를 완벽하게 제어하면서 클라우드 스토리지의 편리함을 누릴 수 있습니다.
위 단계를 따르면 Raspberry Pi에서 Nextcloud를 쉽고 빠르게 설치하고 설정할 수 있습니다. 원활하고 안정적인 환경을 유지하기 위해 Nextcloud 및 OpenMediaVault 설치를 정기적으로 업데이트하고 Nextcloud 인스턴스를 안전하게 보호하며 데이터를 백업하는 것을 잊지 마십시오.