【OnlyOffice】リバースプロキシ + Dockerを使ったインストールと初期設定(Nextcloudとの連携)
前提条件
ストレージ容量を消費するため自宅サーバーで稼働(Docker Engineはインストール済み)。
VPSのYunohostでリバースプロキシ(SSL終端)
参考サイト(OnlyOffice for Docker)
- https://hub.docker.com/r/onlyoffice/documentserver/tags
- https://forum.onlyoffice.com/t/install-command-for-docker-after-reverse-proxy/1687/3
導入手順
docker-compose.ymlの作成
version: '3'
services:
OnlyOffice:
restart: always
image: onlyoffice/documentserver
container_name: oo-documentserver
# Secretキーの固定はできなかったのでコメント化
#environment:
# - JWT_ENABLED=true
# - JWT_SECRET=Rtnl2pEQ0QWZRsvwvDVFQQuCETYodmPZ
ports:
- 50080:80
- 50443:443
#volumes:
# - ./local.json:/etc/onlyoffice/documentserver/local.json
リバースプロキシの構成(nginxの設定ファイル)
redirectアプリの設定では動作しなかったので、yunohostアプリのOnlyOfficeから構成をコピーしています。
ドメインの設定、証明書の取得が終わってからの作業です。
#sub_path_only rewrite ^/$ / permanent;
location / {
proxy_pass http://自宅サーバーのIPアドレス:ポート番号;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
#proxy_set_header Connection $proxy_connection;
proxy_set_header Connection "upgrade";
proxy_set_header X-Forwarded-Host $server_name;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
more_set_headers "X-Frame-Options : ALLOW-FROM https://Nextcloudをインストールしているドメイン名 always";
client_max_body_size 10G;
}
注意点
OnlyOffice、Nextcloudのどちらも認証不要でアクセス(ログインでは無く)できる必要があります(basic認証等が必要な場合は、Nextcloud → OnlyOfficeへのアクセスや、Nextcloudで保存ができなくなります)。
コンテナを再起動するとsecretキーが変わるのでNextcloud側もシークレットキーの変更が必要になります。
備考
物理サーバーが同じでも、ドメインが別の場合は(バーチャルホスト設定)NextcloudとOnlyOfficeのどちらもインストールできます。
RedmineでもプラグインのインストールでOfficeファイルの編集ができます(その際、more_set_headers “X-Frame-Options : ALLOW-FROM https://Nextcloudをインストールしているドメイン名 always";にredmineのドメイン名の記載が必要?かもしれません)。
ディスカッション
コメント一覧
まだ、コメントがありません