# Onlyoffice 설치 및 Nextcloud와 연동

Nextcloud에서 Onlyoffice 사용에 앞서 Onlyoffice Docker 설치가 필요 합니다.

1\. "/volume1/docker/onlyoffice/DocumentServer/" 하위에 "logs", "data", "lib", "db" 디렉토리 생성 합니다.

```shell
mkdir /volume1/docker/onlyoffice/DocumentServer/logs
mkdir /volume1/docker/onlyoffice/DocumentServer/data
mkdir /volume1/docker/onlyoffice/DocumentServer/lib
mkdir /volume1/docker/onlyoffice/DocumentServer/db
```

2\. 아래 명령으로Onlyoffice Docker를 설치 합니다.

```shell
sudo docker run -i -t -d -p 포트번호:443 --name=onlyoffice --restart=always \  # https 이용 (http는 nextcloud에서 연결 불가)
    -v /volume1/docker/onlyoffice/DocumentServer/logs:/var/log/onlyoffice \
    -v /volume1/docker/onlyoffice/DocumentServer/data:/var/www/onlyoffice/Data \
    -v /volume1/docker/onlyoffice/DocumentServer/lib:/var/lib/onlyoffice \
    -v /volume1/docker/onlyoffice/DocumentServer/db:/var/lib/postgresql \
      #외부저장소를 붙였을때 필요한 환경 옵션 (Error occurred in the document service: Error while downloading the document file to be converted. 발생 시 필요)
    -e USE_UNAUTHORIZED_STORAGE=true \ 
    -e JWT_SECRET=비밀번호 onlyoffice/documentserver
```

3\. 인증서를 생성 합니다. certbot도 이용 가능하지만 간단하게 기존 시놀로지 인증서 사용 하겠습니다.

인증서 생성 위치는 아래와 같으며, nano 또는 vi를 이용해 수정을 해줍니다.

```shell
nano /volume1/docker/onlyoffice/DocumentServer/certs/onlyoffice.key
nano /volume1/docker/onlyoffice/DocumentServer/certs/onlyoffice.crt
```

세부 방법은 "문제해결"에 있는 "SSL 인증서 오류 해결"과 동일 방식으로 진행하시면 됩니다.

4\. Nextcloud의 "config.php" 설정을 수정해 줍니다.  
 "config/www/nextcloud/config/config.php"에 아래 항목을 추가해 줍니다.

<p class="callout success">'onlyoffice' =&gt; array (  
 'verify\_peer\_off' =&gt; true,  
),</p>

5\. Nextcloud에 관리자로 접속 후" 앱"에서 onlyoffice 앱을 설치하고 관리자 설정을 진행 합니다.

[![onlyoffice.png](https://wiki.dhcloud.me/uploads/images/gallery/2023-06/scaled-1680-/onlyoffice.png)](https://wiki.dhcloud.me/uploads/images/gallery/2023-06/onlyoffice.png)