푸터 콘텐츠로 바로가기
IRONSECUREDOC 사용

Nextcloud Docker Compose (개발자를 위한 사용 방법)

Docker란?

Docker는 애플리케이션을 가벼운 컨테이너 내에서 배포하고 확장하는 것을 자동화하는 무료 오픈 소스 프레임워크입니다. 이는 애플리케이션 코드와 모든 의존성, 예를 들어 라이브러리, 도구 및 설정을 하나의 패키지로 묶어 개발자 노트북, 테스트 서버, 실제 프로덕션 클라우드 서버 등 어떤 환경에서도 균일하게 실행합니다.

컨테이너는 전통적인 가상 머신과 동일하지 않습니다. 컨테이너는 호스트 시스템의 OS 커널을 공유하므로 시작 속도가 훨씬 빠릅니다.

본질적으로 Docker는 Docker 이미지를 통해 애플리케이션과 그 환경을 정의하며, 이는 컨테이너를 생성하기 위한 템플릿입니다. 오케스트레이션 도구에는 다중 컨테이너 애플리케이션용 Docker Compose와 이미지를 공유하는 중심 저장소인 Docker Hub가 포함됩니다.

Nextcloud란?

Nextcloud Docker Compose는 자체 호스팅 클라우드 스토리지 애플리케이션 Nextcloud에 대해 격리된, 이식 가능한 및 확장 가능한 환경을 제공하기 위해 Docker 컨테이너를 사용하는 방법을 보여줍니다. 이 인기 있는 솔루션은 파일 저장 및 공유, 캘린더, 연락처 등을 지원하며, 데이터에 대한 완전한 제어를 허용합니다.

이는 PHP 및 웹 서버와 같은 종속성이 하나의 컨테이너에 포함되어 있기 때문에 설정을 단순화합니다; Docker는 Nextcloud의 설치 및 관리를 훨씬 쉽게 만듭니다. 이것은 또한 모든 환경에서 동일하게 실행되도록 보장하여 다른 시스템으로의 원활한 배포를 가능하게 합니다.

Docker에서 Nextcloud를 실행하는 것은 쉽고 모듈식이며 확장 가능합니다. 예를 들어, Docker Compose를 사용한 다중 컨테이너 설정에서는 Nextcloud 데이터베이스(e.g., MySQL 또는 MariaDB), 캐싱(e.g., Redis), 그리고 Nextcloud 애플리케이션 자체에 대한 개별 컨테이너를 실행합니다. 이는 유연성을 더하여 Nextcloud 인스턴스의 더 쉬운 관리와 확장을 가능하게 합니다.

Nextcloud의 기능

Nextcloud Docker는 주요 핵심 기능을 아래에 나열된 채 배포 및 관리 기능의 용이성을 제공합니다:

  • 간소화된 설치: Docker의 단일 컨테이너 내에서 PHP 및 웹 서버 같은 모든 종속성을 포함할 수 있는 기능 덕분에 쉬운 설치가 가능하며, 번거로움 없이 설치 및 구성을 할 수 있습니다.
  • 휴대성: Docker 컨테이너는 다양한 환경 및 노드에서 휴대 가능하며, 서버 또는 클라우드 환경 간에 Nextcloud 인스턴스를 이동할 때 호환성 문제를 방지합니다.
  • 격리: 컨테이너는 호스트 시스템과 다른 컨테이너로부터 절연되어 있어 종속성 및 설정이 동일한 기계에 있는 다른 서비스와 충돌하지 않도록 합니다.
  • 확장성: Docker Compose를 사용하여 데이터베이스, 캐싱 또는 부하 분산 서비스를 위한 추가 컨테이너를 배포하여 대규모 환경에서 우수한 성능을 위해 Nextcloud를 쉽게 확장할 수 있습니다.
  • 영구 저장소: 스토리지를 컨테이너 외부에 마운트하면, 컨테이너가 다시 시작되거나 업그레이드된 후에도 데이터가 유지됩니다.
  • 쉬운 업그레이드: 새로운 이미지 버전을 가져와 컨테이너를 다시 시작하여 Docker를 통해 Nextcloud 또는 그 종속성을 원활하게 업그레이드합니다; 혼란스러운 마이그레이션이 필요하지 않습니다.
  • 보안: Docker의 내재된 격리는 Nextcloud의 환경을 호스트 및 다른 애플리케이션과 분리하여 공격 표면을 최소화합니다.

이 모든 기능은 Nextcloud Docker를 당신의 개인 클라우드 인프라를 호스팅하는 효율적인 솔루션으로 만듭니다.

Nextcloud 설치

필수 조건

  • WSL 2 지원이 있는 Windows 10/11 (Pro, Enterprise, 또는 Education).
  • Docker Desktop이 Windows에 설치되어 실행 중입니다.
  • 명령 프롬프트 또는 터미널 사용에 대한 기본적인 친숙도.

Nextcloud Docker 이미지 가져오기

터미널에서 다음 명령을 실행하여 Docker Hub에서 공식 Nextcloud Docker 이미지를 가져오세요:

docker pull nextcloud
docker pull nextcloud
SHELL

또는 Docker 애플리케이션을 열고 검색 상자에서 "nextcloud"를 검색하세요.

명령 프롬프트에서 아래 명령을 사용하여 Nextcloud 설치를 실행하십시오:

docker run -d -p 8080:80 nextcloud
docker run -d -p 8080:80 nextcloud
SHELL

이 명령은 Nextcloud 이미지를 다운로드하고 새 컨테이너를 생성하여 포트 8080에 노출시킬 것입니다.

데이터베이스용 MariaDB 설정

Nextcloud는 데이터를 저장하기 위해 데이터베이스를 필요로 합니다. MySQL의 대체제로 MariaDB를 사용할 수 있습니다.

먼저 MariaDB 이미지를 가져오십시오:

docker pull mariadb
docker pull mariadb
SHELL

이 명령을 사용하여 MariaDB 컨테이너를 생성하십시오:

docker run -d \
  --name nextcloud-db \
  -e MYSQL_ROOT_PASSWORD=your_root_password \
  -e MYSQL_DATABASE=nextcloud \
  -e MYSQL_USER=nextcloud_user \
  -e MYSQL_PASSWORD=your_password \
  mariadb
docker run -d \
  --name nextcloud-db \
  -e MYSQL_ROOT_PASSWORD=your_root_password \
  -e MYSQL_DATABASE=nextcloud \
  -e MYSQL_USER=nextcloud_user \
  -e MYSQL_PASSWORD=your_password \
  mariadb
SHELL

강력한 비밀번호를 선택하여 your_root_passwordyour_password을 대체하십시오. 이 명령은 nextcloud-db이라는 이름의 MariaDB 컨테이너를 설정하며 nextcloud라는 데이터베이스와 nextcloud_user이라는 사용자를 만듭니다.

Nextcloud 웹 인터페이스

웹 브라우저를 열고 Nextcloud가 호스팅된 서버의 IP 주소 또는 도메인 이름을 입력하여 Nextcloud 설치에 접근하세요. 로컬 설치의 경우, 사용하세요:

http://localhost:8080/

관리자 계정 설정

설정 페이지에 접근하면 관리자 사용자를 생성하세요. 필요한 경우 구성 및 설정 관리를 위한 Nextcloud CLI도 사용 가능합니다.

필수 정보를 입력한 후 데이터베이스 연결을 구성하십시오:

  1. 데이터베이스 호스트: 로컬 데이터베이스에는 localhost을 사용하거나 Docker를 사용하는 경우 데이터베이스 컨테이너 이름(예: nextcloud-db)을 사용하십시오.
  2. MariaDB 설정 시 제공된 데이터베이스 사용자 이름과 비밀번호을 입력하세요.
  3. 데이터베이스 이름: 이 예에서는 nextcloud입니다.

필요한 세부 사항을 모두 입력하고 "설정 완료"를 클릭하여 설치를 완료하세요.

IronSecureDoc란?

IronSecureDoc은 민감한 파일의 암호화, 수정, 및 디지털 서명을 위한 문서 보안 도구입니다. PDF를 안전하게 보호하여 사용자가 개인정보와 기밀 정보를 효과적으로 제어할 수 있도록 합니다.

IronSecureDoc 설치 및 실행

다음 명령을 사용하여 IronSecureDoc Docker 이미지를 가져오십시오:

docker pull ironsoftwareofficial/ironsecuredoc
docker pull ironsoftwareofficial/ironsecuredoc
SHELL

IronSecureDoc 컨테이너를 실행하려면 다음을 사용하세요:

docker container run --rm -p 8080:8080 \
  -e IronSecureDoc_LicenseKey=<IRONSECUREDOC_LICENSE_KEY> \
  -e ENVIRONMENT=Development \
  -e HTTP_PORTS=8080 \
  ironsoftwareofficial/ironsecuredoc:latest
docker container run --rm -p 8080:8080 \
  -e IronSecureDoc_LicenseKey=<IRONSECUREDOC_LICENSE_KEY> \
  -e ENVIRONMENT=Development \
  -e HTTP_PORTS=8080 \
  ironsoftwareofficial/ironsecuredoc:latest
SHELL

실제 라이선스 키로 <IRONSECUREDOC_LICENSE_KEY>을 대체하십시오. 이 명령은 IronSecureDoc 컨테이너를 시작하여 포트 8080에 노출시킵니다.

Docker 컨테이너에서 IronSecureDoc 사용

IronSecureDoc는 설치 후 REST API를 통해 접근할 수 있습니다. 문서 및 API 엔드포인트는 http://localhost:8080/swagger/index.html에서 찾을 수 있습니다.

암호화할 문서를 제출하려면 curl를 통해 POST 요청을 사용하십시오:

curl -X 'POST' \
  'http://localhost:8080/v1/document-services/pdfs/encrypt?user_password=demo' \
  -H 'accept: */*' \
  -H 'Content-Type: multipart/form-data' \
  -F 'pdf_file=@test.pdf;type=application/pdf'
curl -X 'POST' \
  'http://localhost:8080/v1/document-services/pdfs/encrypt?user_password=demo' \
  -H 'accept: */*' \
  -H 'Content-Type: multipart/form-data' \
  -F 'pdf_file=@test.pdf;type=application/pdf'
SHELL

이 문서는 IronSecureDoc으로 전달되어 적절한 암호화를 적용합니다.

결론

Nextcloud와 IronSecureDoc은 안전한 데이터 처리에서 서로 다른 목적을 제공합니다. Nextcloud는 데이터를 관리하고 공유하기 위한 유연한 자가 호스팅 클라우드 플랫폼으로, Docker를 통해 완전한 개인정보 통제와 확장성을 제공합니다. IronSecureDoc는 민감한 파일의 안전한 처리를 보장하는 고급 문서 암호화를 제공합니다. Docker와의 통합 덕분에 두 솔루션 모두 확장 가능하고 안전한 환경에 적합합니다.

여기를 클릭하여 IronSecureDoc 라이선스에 대한 더 많은 정보를 확인하세요. Iron Software에서 제공하는 제품군에 대한 더 많은 정보를 원하시면 여기를 확인하세요.

자주 묻는 질문

Docker Compose가 Nextcloud 배포를 어떻게 간소화할 수 있나요?

Docker Compose는 멀티 컨테이너 애플리케이션을 조율할 수 있도록 하여 Nextcloud의 모든 종속성을 격리되고 이동 가능하며 확장 가능한 컨테이너로 패키징함으로써 Nextcloud 배포를 간소화합니다.

Nextcloud에 Docker를 사용하는 이점은 무엇인가요?

Nextcloud에 Docker를 사용하는 것은 간소화된 설정, 강화된 이동성, 격리, 확장성, 지속적인 저장장치, 쉬운 업그레이드 및 향상된 보안을 제공하는 이점이 있습니다.

Docker를 사용하여 Nextcloud를 어떻게 설정하나요?

명령어 docker pull nextcloud를 사용하여 공식 Nextcloud Docker 이미지를 가져오고 docker run -d -p 8080:80 nextcloud를 사용하여 실행함으로써 Docker를 사용하여 Nextcloud를 설정할 수 있습니다.

Nextcloud를 위한 Docker 설정에는 어떤 구성 요소가 포함되나요?

Nextcloud를 위한 Docker 설정에는 보통 애플리케이션 자체와 데이터베이스, 캐싱 서비스를 위한 별도의 컨테이너가 포함되며, 각 컨테이너는 모듈성 및 확장성을 보장하기 위해 Docker Compose에 의해 관리됩니다.

IronSecureDoc가 Nextcloud의 데이터 보안을 어떻게 강화하나요?

IronSecureDoc는 진보된 문서 암호화, 왜곡 및 디지털 서명 기능을 제공하여 Docker 환경 내에서 민감한 파일이 안전하게 처리되도록 함으로써 Nextcloud의 데이터 보안을 강화합니다.

Nextcloud 배포를 위해 Docker와 IronSecureDoc의 통합이 가능합니까?

네, IronSecureDoc은 Docker 이미지를 사용하여 Nextcloud 배포에 통합이 가능하며, 이 통합은 Docker화된 환경 내에서 REST API를 통해 안전한 문서 처리를 가능하게 합니다.

왜 클라우드 제공업체보다 Nextcloud와 같은 자체 호스팅 솔루션을 선택해야 하나요?

Nextcloud와 같은 자체 호스팅 솔루션을 클라우드 제공자보다 선택하면 전체 개인정보 보호 제어, 데이터 주권, 특정 조직의 필요에 맞게 환경을 맞춤화할 수 있는 능력을 제공하며 효율적인 배포를 위해 Docker를 활용합니다.

다양한 환경에서의 Nextcloud 성능을 보장하는 데 Docker의 역할은 무엇입니까?

Docker는 애플리케이션과 모든 종속성을 단일 컨테이너에 캡슐화하여 환경 간의 충돌을 방지하고 배포 과정을 단순화함으로써 다양한 환경에서의 Nextcloud의 일관된 성능을 보장합니다.

어떻게 Docker와 Nextcloud는 확장 가능한 클라우드 스토리지 솔루션을 제공하기 위해 함께 작동합니까?

Docker와 Nextcloud는 애플리케이션을 효율적으로 관리하고 확장하기 위해 컨테이너를 사용하여 함께 작동하며, 수요가 증가함에 따라 자원과 서비스를 쉽게 추가할 수 있도록 하면서 데이터 무결성과 보안을 유지합니다.

커티스 차우
기술 문서 작성자

커티스 차우는 칼턴 대학교에서 컴퓨터 과학 학사 학위를 취득했으며, Node.js, TypeScript, JavaScript, React를 전문으로 하는 프론트엔드 개발자입니다. 직관적이고 미적으로 뛰어난 사용자 인터페이스를 만드는 데 열정을 가진 그는 최신 프레임워크를 활용하고, 잘 구성되고 시각적으로 매력적인 매뉴얼을 제작하는 것을 즐깁니다.

커티스는 개발 분야 외에도 사물 인터넷(IoT)에 깊은 관심을 가지고 있으며, 하드웨어와 소프트웨어를 통합하는 혁신적인 방법을 연구합니다. 여가 시간에는 게임을 즐기거나 디스코드 봇을 만들면서 기술에 대한 애정과 창의성을 결합합니다.

Iron Support Team

We're online 24 hours, 5 days a week.
Chat
Email
Call Me