ONLYOFFICE DocsをDigitalOceanで展開する方法

## はじめに

DigitalOcean Marketplaceで提供されるワンクリックアプリを使って、DigitalOceanのクラウドインフラにDocker版のONLYOFFICE Docsを簡単にデプロイできるようになりました。

ワンクリックアプリは、Ubuntu OSで動作するDigitalOceanサーバにONLYOFFICEオンラインエディタを展開するために必要な設定済みのコンポーネントがすべて含まれたイメージです。

* Dockerサービス
* ONLYOFFICE Docs

ONLYOFFICE Docsのドロップレットが起動したら、ONLYOFFICE DocsをAlfresco, Confluence, Liferay, Nextcloud, ownCloud, SharePoint, HumHub, Plone, Nuxeoなどのクラウドストレージのプラットフォームのうちの1つと統合させることができます。

## ステップ1. DigitalOceanでドロップレットを作成する

DigitalOceanアカウントにログインし、DigitalOcean Marketplaceに移動します。

ビジネスアプリのカテゴリでONLYOFFICE Docsを見つけ、アプリの上にマウスボタンを移動し、表示された「ドロップレットを作成する」ボタンをクリックします。または、ドロップレットの詳細ページを開き、'Create ONLYOFFICE Docs Droplet'ボタンをクリックすることもできます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2655664/7c225ee4-1531-50dc-6a88-4ecfa25abcc0.png)

「Choose a plan」のセクションで、利用したいプランを選択するか、デフォルトのままにしておきます。ONLYOFFICE Docsの実行には、8GB RAMと4CPUを提供するBasicプランで十分です。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2655664/cb5ef5ae-f29c-6038-9ce2-4d68453f4acb.png)

オプションで、他のドロップレットパラメータを設定することができます。

* 必要であれば、ブロックストレージを追加します。ブロックストレージを使用すると、同じ地域内のあるドロップレットから別のドロップレットに移動できる独立したストレージボリュームを追加することができます。
* 必要に応じて、データセンターリージョンを変更します。最も近い場所にあるリージョンを選択することをお勧めします。
* デフォルトでは、ドロップレットはパブリック IP アドレスを介して利用できます。[VPC ネットワーク](https://www.digitalocean.com/docs/networking/vpc/)を選択した場合、ドロップレットはプライベート IP アドレスを介して、同じ VPC ネットワーク内の他のリソースとしか通信できなくなります。パブリックインターネットからはアクセスできなくなります。
* 必要に応じて、IPv6 ネットワークの有効化、[ユーザーデータ](https://www.digitalocean.com/docs/droplets/how-to/provide-user-data/)の提供、またはドロップレットモニタリングの有効化などの追加オプションを確認します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2655664/ec7a290b-4be7-d139-8500-b5f5e17d6fca.png)

「Authentication」のセクションで、あなたのドロップレットにアクセスするために使用する認証タイプを選択します。ルートパスワードを指定するか、SSH 公開キーを追加するかのどちらかを選択します。

ドロップレットにアクセスするためのルートパスワードを作成します（パスワード認証は、SSH キーを使用するよりも安全性が低い方法です）。パスワードは以下の要件に対応している必要があります。

* 少なくとも 8 文字であること
* 少なくとも 1 文字の大文字を含む必要があります（最初と最後の文字はカウントされません）。
* 少なくとも1つの数字が含まれていること
* 数字や特殊文字で終わらせてはいけない

パスワードは安全な場所に保管してください。あなたのドロップレットの詳細とパスワードを含む電子メールメッセージを受け取ることはありません。

作成したドロップレットにアクセスするには、パスワードを使用するよりも、SSH キーを使用する方がより安全です。この場合、パスワード認証はデフォルトで無効化されます。パスワードの代わりに SSH キーを使用してサーバーに接続する場合は、新しい SSH 公開キーを追加するか、以前に追加した公開キーを使用します。シクレットキーはローカルマシンに保存する必要があります。SSHキーペアを作成し、ドロップレットに公開キーを追加する方法の詳細については、[DigitalOceanの公式ドキュメント](https://www.digitalocean.com/docs/droplets/how-to/add-ssh-keys/)をご参照ください。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2655664/4c081a1b-606c-ddab-62db-f5b523e3f491.png)

* 必要に応じて、作成されたドロップレットの数の変更、DigitalOcean コントロールパネル内でドロップレットを識別するために使用されるデフォルトのホスト名の変更、タグの追加、または複数のプロジェクトがある場合は、ドロップレットを割り当てるプロジェクトを選択することができます。
* ドロップレットの自動バックアップを週単位で実行したい場合は、ドロップレットのバックアップを有効にします。バックアップには、ドロップレット価格の20%がかかります。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2655664/7553cf78-5798-00e0-ca67-5692a1285611.png)

「Create Droplet」ボタンをクリックし、ドロップレットが作成されるまで待ちます。新しく作成されたドロップレットは、DigitalOceanのコントロールパネルに表示されます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2655664/12dd0744-d319-1f49-6e56-1ea0fdceda8a.png)

サーバーIPは、ドロップレットのホスト名の隣に表示されます。IP アドレスの上にマウスボタンを移動させると、「コピー」オプションが表示されます。これをクリックすると、IPアドレスがコピーされます。

## ステップ2. SSHでサーバーに接続し、インストールを完了させる

Windowsでは、PuTTYユーティリティを使用することができます。

ドロップレットの IP アドレスを入力し、ポート 22 が指定され、SSH 接続タイプが選択されていることを確認します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2655664/9063ff52-0184-290a-31e4-da4b79510e84.png)

ドロップレット作成時に SSH 公開キーを追加した場合は、「Connection -> SSH -> Auth」セクションに、ローカルマシンに保存されている対応するシクレットキーへのパスを指定します。

[開く] ボタンをクリックします。次に、PuTTY Security Alert ウィンドウで [はい] をクリックします。

* ドロップレット作成時にパスワード認証を選択した場合は、ログインとして root を使用し、ドロップレット作成時に指定した `root` パスワードを入力します。
* SSH キーを追加した場合は、シクレットキーを使用して認証されます。

Linuxでは、OpenSSHのようなSSHクライアントを使用することができます。ターミナルに `ssh root@your_droplet_ip` と入力し、`yes` と入力するとサーバーへの接続が継続されます。

* SSHキーを追加していない場合は、ドロップレット作成時に指定したパスワードの入力を求められます。
* `ssh -i /path/to/private/key root@your_droplet_ip` シクレットキーを使用して認証されます。

インストールが完了するまで待ちます。この間、`onlyoffice-document-server の Docker コンテナが自動的に起動します。

ソリューションの機能を調べるために、テストのためにローカルファイルをアップロードできるようにするテスト例を有効にしてください。これを行うには、次のコマンドを実行します。

```
sudo docker exec $(sudo docker ps -q) sudo supervisorctl start ds:example
```

オートスタートにサンプルを追加します。

```
sudo docker exec $(sudo docker ps -q) sudo sed 's,autostart=false,autostart=true,' -i /etc/supervisor/conf.d/ds-example.conf
```

## ステップ3．ウェブブラウザでONLYOFFICE Docsにアクセスする

例題を開始したら、ウェブブラウザのアドレスバーに `http://` + `<あなたのドロップレットIPアドレス>/example/` を入力してください。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2655664/e7c15da4-826c-95bb-4ebd-cea7d7fa780a.png)

ONLYOFFICE Docsのサンプルページが開きます。ここでは、以下のことができます。

1. ファイルのアップロード]オプションを使用して、PCに保存されているファイルをアップロードします。
2. 新規作成 -> ドキュメント、スプレッドシート、プレゼンテーション、フォームテンプレートのオプションを使用して、白紙のテキストドキュメント、スプレッドシート、プレゼンテーション、フォームテンプレートを新規作成する。サンプルコンテンツ付きのファイルを作成する場合は、まず「サンプルコンテンツ付き」ボックスをチェックします。

アップロードまたは作成されたファイルは、新しいブラウザのタブで、対応するONLYOFFICEオンラインエディタが開かれ、編集機能を試すことができます。

また、ONLYOFFICE Docsのサンプルページの「あなたのドキュメント」リストにも表示されます。

共同編集機能を確認したい場合は、ユーザー名リストから別のテストユーザーを選択し、[Your documents] リストで同じドキュメントをクリックして、新しいブラウザタブで開いてください。

ONLYOFFICE DocsとAlfresco, Confluence, Liferay, Nextcloud, ownCloud, SharePoint, HumHubなどのビジネスプラットフォームを簡単に統合するには、ここに記述されているように、これらのソリューションの統合コネクタを使用します： [https://api.onlyoffice.com/editors/plugins](https://api.onlyoffice.com/editors/plugins) ウェブアプリケーションの設定でONLYOFFICE Docsアドレスを指定するのに、ドロップレットIPアドレスを使います。例： `http://<your droplet IP address>/`

ONLYOFFICE Docs を独自のウェブアプリケーションと統合するには、API ドキュメント [https://api.onlyoffice.com/editors/basic](https://api.onlyoffice.com/editors/basic) をご参照ください。

[今すぐダウンロード](https://www.onlyoffice.com/download-docs.aspx?from=qiita)