본문 바로가기
IT&DEV -*

[OMV6]Potainer를 활용한 NextCloud설치

by Hoft 2023. 5. 3.

Nextcloud는 개인 및 기업용 클라우드 스토리지 서비스로 널리 사용되고 있습니다. 다른 클라우드 서비스와는 달리, Nextcloud는 데이터를 사용자가 소유하고 제어할 수 있도록 해줍니다. 이번에는 Portainer에서 Nextcloud를 설치하는 방법에 대해 다루어 보겠습니다.

 

Nextcloud의 장점

  1. 자유로운 확장성: Nextcloud는 모듈화된 구조를 가지고 있기 때문에 사용자가 필요에 따라 기능을 추가하거나 제거할 수 있습니다.
  2. 다양한 통합 기능: Nextcloud는 다양한 플랫폼과 연동이 가능합니다. Dropbox, Google Drive, OneDrive 등 다른 클라우드 서비스의 데이터를 Nextcloud에 동기화할 수 있습니다.
  3. 저렴한 비용: Nextcloud는 라이센스 비용이 없고, 서버와 스토리지를 사용자가 직접 구매하거나 대여할 수 있기 때문에 저렴한 비용으로 운영이 가능합니다.
  4. 강력한 보안 기능: Nextcloud는 암호화된 파일 공유 및 파일 접근 제어와 같은 보안 기능을 제공합니다. 또한 사용자가 데이터를 암호화하고 복호화할 수 있는 기능도 제공합니다
  1.  

MariaDB 설치하기

DB는 파일 및 메타데이터를 저장하고 관리하기 위해 필요합니다. 예를 들어, Nextcloud는 파일의 이름, 크기, 작성자, 수정일 등의 메타데이터를 데이터베이스에 저장하여 검색 및 정렬을 용이하게 합니다.

 

MairaDB 설치를 위하여 image를 가져옵니다. 



mriadb에서 사용할 volume를 생성합니다.



MariaDB 컨테이너를 생성합니다.

image 입력란에는 linux/mariadb:latest  를 입력합니다.

 

Volumes 셋팅으로 가서 앞서 생성한 mariadb_config 볼륨을   /config 로 맵핑합니다.



이전에 생성한 MyNet워크를 설정하여 컨테이너간 통신이 되도록 설정합니다.

 

Environment variables 환경변수에는 아래와 같이 입력합니다.  root비밀번호는 원하는 암호로 입력합니다.
MYSQL_ROOT_PASSWORD   =  root 비밀번호

TZ = Asia/Seoul

 

재시작 정책을 Always로 설정합니다.

 

Deploy the container 버튼을 클릭하여 컨테이너를 생성합니다.

 

 

OMV SSD 디스크 설정하기

NextCloud에서 사용할 저장소로 SSD 를 하나 준비했습니다.

 

 

저장소로 사용하기 위해 파일시스템을 마운트 합니다.

 

마운트한 디스크를 NextCloud에서 사용하기 위해 공유폴더로 설정합니다.

변경 사항을 적용합니다.

 

생성된 공유폴더의 절대경로는 이후에 NextCloud 컨테이너 생성시 사용 할 예정입니다.

 

고민을 하다가 config로 사용할 저장소도 추가로 생성하였습니다.

NextCloud 설치하기

먼저  linuxserver/nextcloud  이미지를 가져옵니다.

 

가져온 이미지로 컨테이너를 생성합니다.

image 입력란에는  linuxserver/nextcloud:latest  를 입력합니다.

port는   10443, 443 을 입력합니다.

이전에 설정한 공유폴더의 정대경로를 복사합니다.

 

 

 

Volumes 설정을 아래와 같이  /config ,  /data 를 각각 공유폴더의 절대경로로 설정해줍니다.

 

이전에 생성한 MyNet워크를 설정하여 컨테이너간 통신이 되도록 설정합니다.

 

ENV 에는 PUID, PGID, TZ를 설정해줍니다.

자동 재시작 설정을 해줍니다.

Deploy the container 버튼을 클릭하여 컨테이너를 생성합니다.

 

 

 

컨테이너가 시작되면 브라우저의 주소창에  nextcloud 로 nat가 되는 ip로 접속하거나

이전처럼NginxProxyManager 에  proxy host를 설정하여 접속합니다.

 

설정을 마치고 도메인으로 사이트를 접속하게되면 아래와 같이 접속이 차단됩니다.

 

간단하게 NextCloud의 컨테이너 콘솔을 열어서 도메인을 추가하면 해결됩니다.

콘솔에 접속하여  config/www/nextcloud/config  경로의  config.php 파일을 열어 수정합니다.

 

trusted_domains 에 nginx에서 설정한 도메인을 추가하고 저장합니다.

 

도메인으로 정상 접속하게 되면 관리자 계정생성 단계가 나옵니다.

저장소 및 데이터베이스 를 선택하여 확장하고 아래와 같이 정보를 입력합니다.

여기서 데이터베이스 정보는 앞에서 설치한 mariadb 정보를 입력합니다.

 

NextCloud의 설치가 진행됩니다.

 

 

 

끝!!

댓글