OSSの文書管理サーバーAlfrescoをUbuntuにインストール

ドキュメント管理サーバーを探していたところ、非常にたくさんヒットするこのAlfresco(アルフレスコ)をインストールしてみたときの備忘録を残す。

Alfresco

Linux版のオールインワンパッケージのインストーラーの直リンクが以下になる。執筆中の最新バージョンは201702

Linux版のAlfresco Community

AlfrescoはJava、PostgreSQL、Tomcat、Nginx、Alfrescoなどで構成されるサーバーアプリケーションになる。稼働中のDBやWebサーバーとも連携できるようだが、オールインワンパッケージを利用するのが一番手っ取り早い。

まずは、インストーラーファイルをダウンロードする。

> wget http://eu.dl.alfresco.com.s3.amazonaws.com/release/community/201702-build-00016/alfresco-community-installer-201702-linux-x64.bin

> chmod 755 alfresco-community-installer-201702-linux-x64.bin

インストーラーを実行する

> sudo ./alfresco-community-installer-201702-linux-x64.bin

早速ライブラリがないと怒られる。中止してライブラリをインストールする。

Some or all of the libraries needed to support LibreOffice were not found on your system: fontconfig libSM libICE libXrender libXext libcups libGLU
libcairo2 libgl1-mesa-glx
You are strongly advised to stop this installation and install the libraries.
For more information, see the LibreOffice documentation at http://docs.alfresco.com/search/site/all?keys=libfontconfig

Do you want to continue with the installation? [y/N]: n

詳細は以下のリンクから確認できる。どうもLibreOffice用のライブラリのようで、後からでも大丈夫そう。あと無いと言われるが、それらしいものはインストールされているようだったので、続行することにする。

Installing Linux libraries manually

Language Selection

Please select the installation language
[1] English - English
[2] French - Français
[3] Spanish - Español
[4] Italian - Italiano
[5] German - Deutsch
[6] Japanese - 日本語
[7] Dutch - Nederlands
[8] Russian - Русский
[9] Simplified Chinese - 简体中文
[10] Norwegian - Norsk bokmål
[11] Brazilian Portuguese - Português Brasileiro
Please choose an option [1] : 6
----------------------------------------------------------------------------
ようこそ Alfresco Community セットアップウィザードへ。

----------------------------------------------------------------------------
インストールの種類

[1] 簡易 - デフォルトの設定を使ってインストールします。
[2] 詳細設定 - サーバーのポートとサービスのプロパティを設定できます。: 追加でインストールするコンポーネントを選択してください。
オプションを選択してください [1] : 2
----------------------------------------------------------------------------
インストールするコンポーネントを選択してください。準備ができたら“次へ“をクリックしてください。

Java [Y/n] :y

PostgreSQL [Y/n] :y

LibreOffice [Y/n] :y

Alfresco Community : Y (Cannot be edited)

Solr1 [y/N] : n

Solr4 [Y/n] :y

Alfresco Office Services [Y/n] :y

Web Quick Start [y/N] : n

Google ドキュメントの統合 [Y/n] :y
----------------------------------------------------------------------------
インストール先フォルダ

Alfresco Community をインストールするフォルダを選択してください。

インストール先フォルダ: [/opt/alfresco-community]:

ポート番号の指定に関しては、別途以下のコマンドで被らないか確認する。

> sudo lsof | grep <ポート番号>
----------------------------------------------------------------------------
データベースサーバーのパラメータ
データベースのポート番号を入力してください。
データベースサーバーのポート: [5432]: 5435

Tomcat のポート設定
Tomcat の設定パラメータを入力してください。
Web サーバードメイン: [127.0.0.1]: hoge.com

Tomcat サーバー用ポート: [8080]: 8080
Tomcat のシャットダウン用ポート: [8005]: 8015
Tomcat の SSL ポート: [8443]: 8443
Tomcat の AJP ポート: [8009]: 8009

LibreOffice サーバーのポート
LibreOffice サーバーがリッスンするポート番号を入力してください。
LibreOffice サーバーのポート: [8100]: 8100

FTP ポート
統合された FTP サーバーに使用するポート番号を選択してください。
ポート: [21]: 21

管理者のパスワード
Alfresco Content Services 管理者アカウントのパスワードを指定してください。
管理者のパスワード: :
パスワードの再入力: :

サービスとしてインストールする
Alfresco Community をサービスとして登録すると、マシンの起動時に自動的に Alfresco Community が開始されます。
Alfresco Community をサービスとしてインストールしますか? [Y/n]:y

自分の環境の場合、Sambaが稼働しているため、139と445ポートが使用されている。確か印刷関連のポートなので、困るまでは放置していおく。25のsmtpも使用しない。

インストールが完了すると、「起動するか?」と聞かれるが、ドキュメントの保存場所を変更する場合は、起動しない。

起動してしまうと、初期設定やDB作成などが実行される。一度でも起動すると、データの場所を設定ファイルなどを変更してもうまく移行できなかった。(結局、再インストールした)

警告

この環境は Alfresco Content Services
を適切に実行するのに十分な構成ではありません。インストールする前に、以下の問題をチェックしてください。

これらの問題があっても Alfresco Content Services
は機能しますが、一部の製品機能が使用できないか、システムが適切に動作しない場合があります。

CIFS TCP ports in use
:  139
 445

SMTP TCP port in use
: 25
IMAP TCP port in use.
: 25

続けるには [Enter] キーを押してください :

セットアップウィザードによる Alfresco Community のインストールが完了しました。

Readme ファイルを表示 [Y/n]:n

Alfresco Community を起動する [Y/n]:n

管理データの保存ディレクトリを変更する

以下の手順は、一度でもAlfrescoを起動してしまうとうまく移行できないので注意する

インストールが完了すると、インストールディレクトリ以下にalf_dataというディレクトリが作成される。
ここにすべてのデータが格納される。alfrescoのインストール先のパーティションに空き容量が乏しい場合は、変更しておく。

以下は/opt/alfresco-community/alf_data/home/alfresco/alf_dataへ移動するための手順になる。

  • 設定ファイルの修正

以下のコマンドで該当するファイルを特定する

> sudo find . -name "*" -type f | xargs sudo grep alf_data
> sudo vi ./solr4/archive-SpacesStore/conf/solrcore.properties

data.dir.root=/home/alfresco/alf_data/solr4/index

> sudo vi ./solr4/workspace-SpacesStore/conf/solrcore.properties

data.dir.root=/home/alfresco/alf_data/solr4/index

> sudo vi ./postgresql/bin/setenv.sh

PGDATA="/home/alfresco/alf_data/postgresql"

> sudo vi ./postgresql/scripts/ctl.sh

POSTGRESQL_PIDFILE=/home/alfresco/alf_data/postgresql/postmaster.pid
POSTGRESQL_START="/opt/alfresco-community/postgresql/bin/pg_ctl start -w -D /home/alfresco/alf_data/postgresql"
POSTGRESQL_STOP="/opt/alfresco-community/postgresql/bin/pg_ctl stop -D /home/alfresco/alf_data/postgresql"

> sudo vi ./tomcat/shared/classes/alfresco-global.properties

dir.root=/home/alfresco/alf_data

> sudo vi ./tomcat/conf/server.xml

: 
keystoreFile="/home/alfresco/alf_data/keystore/ssl.keystore"  
:
truststoreFile="/home/alfresco/alf_data/keystore/ssl.truststore"  
:


> sudo vi ./tomcat/conf/Catalina/localhost/solr4.xml

 <Environment name="solr/model/dir"   type="java.lang.String" value="/home/alfresco/alf_data/solr4/model" override="true"/>
  <Environment name="solr/content/dir" type="java.lang.String" value="/home/alfresco/alf_data/solr4/content" override="true"/>

> sudo vi ./tomcat/webapps/alfresco/WEB-INF/classes/log4j.properties

log4j.appender.File.File=/home/alfresco/alfresco.log

> sudo vi ./solr4/log4j-solr.properties

log4j.appender.File.File=/home/alfresco/solr.log

> sudo vi ./tomcat/webapps/share/WEB-INF/classes/log4j.properties

log4j.appender.File.File=/home/alfresco/share.log

  • データのコピー

正しく移行できたことを確認するため、元のデータディレクトリを別名に変更しておく。

> sudo cp -a /opt/alfresco-community/alf_data /home/alfresco/alf_data
> sudo mv alf_data alf_data.bak

サービスを起動する。

> sudo service alfresco start

無事起動したら、URLからインストール時に指定したポートで、アクセスする。

http://192.168.2.100:8080/

インストールしたサーバーIPアドレスと設定したTomcatポートをURLとしてブラウザでアクセスすると以下の画面が表示される。

「Alfresco Repository」-「Alfresco Share」を選択すると、ログイン画面が表示される。

ユーザーIDはadmin、パスワードはインストール時に指定した管理者パスワードを入力してログインする。

無事ログインできると以下のダッシュボードが表示される。

ここまで到達できれば、ひとまずインストールおよびデータディレクトリの移行までは成功していると思われる。ポイントは、「データディレクトリを変更したければ、設定変更するまでは起動しない」である。