Tuesday, July 21, 2020

Alfresco 201911GAをzipからインストールしてみよう【その1】

こんにちは。たなかです。

ステイホーム中にぬか漬けはじめました。
茄子の色をもう少しキレイに出したくて試行錯誤の日々です。

今回はAlfresco CE 201911GAをzipからインストールしてみようの第1回目としてAlfresco起動までの手順をご紹介します。

6.xからインストーラがなくなったので、Dockerが使えない場合や使いたくない環境で簡単にインストールして試すことが難しくなってしまいました。
Dockerが使える環境であれば、以前紹介したとおり、GitHubのプロジェクトをcloneして docker-compose up と言うコマンドで起動することができます。

今回ご紹介するのは動作確認のためのインストール手順となっており、本番環境で使うことを想定したセキュリティやパフォーマンスを考慮したものではありませんのでご注意いただければと思います。
基本的にはAlfrescoの公式ドキュメントに沿った手順になっておりますが、分かりにくい部分を補足したり、動作確認のため必要最低限の手順に削ったりしている部分もあります。

今回使用している環境については以下になります。
CentOS 7.8
OpenJDK 11.0.7
PostgreSQL 11.8
Tomcat 8.5.56
Alfresco Community Edition 201911GA
ActiveMQ 5.15.13

OS、DBやJava等は有償版のSupported Platformに掲載されているものであれば使い慣れたものを使用しても大丈夫です。
有償版は製品としては無償のCommunity版をベースに管理者向けのツールやクラスタリングのための機構等が追加されたものなので、有償版のSupported Platformに載っている(そのPlatformで動作確認が行われている)という情報はCommunity版でも参考になります。
バージョンが完全に一致していなくても、メジャーバージョンが同じで新しいバージョンのものを使えば問題は起こりにくいのではないかと思われます。

※ 環境によってはOpenJDKのインストールやPostgreSQLでDBを作成するまでの手順等で、異なる箇所があるかもしれません。

Alfresco CE 201911GAは先にダウンロードしておきます。

OpenJDK 11 をインストール


yumコマンドでインストールする
yum install java-11-openjdk

新規ファイルを作成しJAVA_HOMEを設定し保存する
vim /etc/profile.d/java.sh

PostgreSQL11をインストール


yumコマンドでインストールし設定、起動する
yum install https://download.postgresql.org/pub/repos/yum/reporpms/EL-7-x86_64/pgdg-redhat-repo-latest.noarch.rpm

yum install postgresql11-server

/usr/pgsql-11/bin/postgresql-11-setup initdb

systemctl enable postgresql-11

systemctl start postgresql-11


Alfresco用DBを作成


psqlを実行する
su - postgres
psql


以下のSQLを実行してDB作成、ロール作成、パスワード設定を行う
CREATE DATABASE alfresco ENCODING 'utf8';

CREATE ROLE alfresco LOGIN PASSWORD 'alfresco';

GRANT ALL ON DATABASE alfresco TO alfresco;

後で認証方法をmd5認証(パスワード認証)に変えるため、postgresロールにパスワードを設定しておく
ALTER USER postgres WITH ENCRYPTED PASSWORD ‘postgres’;

local:allとIPv4、IPv6のlocalからの認証をmd5に変更して保存する
systemctl stop postgresql-11.service

vim /var/lib/pgsql/11/data/pg_hba.conf

PostgreSQLを起動し、接続できることを確認する
systemctl start postgresql-11.service
psql -U alfresco -d alfresco


Tomcatのダウンロードと設定


Alfrescoインストールディレクトリを作成する
mkdir -p /opt/alfresco


公式サイトからTomcatをダウンロードして/opt/alfrescoに配置し、展開する
cd /opt/alfresco
tar xzvf apache-tomcat-8.5.56.tar.gz
rm apache-tomcat-8.5.56.tar.gz


ディレクトリ名を分かりやすくシンプルに変更する
mv apache-tomcat-8.5.56 tomcat


shared/classesディレクトリを作成し、Tomcatのcatalina.propertiesを編集してshared/classesを読み込むように設定する
mkdir -p tomcat/shared/classes
vim tomcat/conf/catalina.properties
catalina.propertiesを以下のように変更して保存する
shared.loader=${catalina.base}/shared/classes
※ 今回はSolr用のTLS設定は行いません

Alfrescoのインストール


作業用のディレクトリ(どこでもOKです)に移動する
cd [作業用ディレクトリ]

※ ダウンロードしておいたAlfrescoを配置しておく

Alfrescoのzipファイルを展開する
unzip alfresco-content-services-community-distribution-6.2.0-ga.zip
cd alfresco-content-services-community-distribution-6.2.0-ga


warファイルとJDBCドライバをTomcat配下にコピーする
cp web-server/webapps/* /opt/alfresco/tomcat/webapps/
cp web-server/lib/postgresql-42.2.6.jar /opt/alfresco/tomcat/lib/


Tomcatにもともと入っていたwebapps配下のディレクトリを削除する
cd /opt/alfresco/tomcat/webapps

rm -rf ROOT

rm -rf docs

rm -rf examples

rm -rf host-manager

rm -rf manager


alfresco-global.propertiesを以下のように編集して保存する
cd /opt/alfresco/tomcat/shared/classes/
cp [作業用ディレクトリ]/alfresco-content-services-community-distribution-6.2.0-ga/web-server/shared/classes/alfresco-global.properties.sample ./
mv alfresco-global.properties.sample alfresco-global.properties

vim alfresco-global.properties

以下の設定のコメントを外して値を変更する
dir.root=/opt/alfresco/alf_data
db.username=alfresco
db.password=alfresco
jodconverter.enabled=false
db.driver=org.postgresql.Driver
db.url=jdbc:postgresql://localhost:5432/alfresco

以下を追記する
index.subsystem.name=solr6
solr.secureComms=none
solr.port=8983
transform.service.enabled=false
local.transform.service.enabled=false
legacy.transform.service.enabled=false

alfresco.warにalfresco-share-services.ampを適用する
cd /opt/alfresco
cp -a [作業用ディレクトリ]/alfresco-content-services-community-distribution-6.2.0-ga/bin ./
cp -a [作業用ディレクトリ]/alfresco-content-services-community-distribution-6.2.0-ga/amps ./

cd bin
chmod +x apply_amps.sh

./apply_amps.sh


alfresco.warが更新されていることを確認する
※ AMPが正常に適用されると、元のalfresco.warがalfresco.war-xxxxxxxxxxxxx.bakとリネームされて新しいalfresco.warが作られるのでbakを確認する
cd /opt/alfresco
ls -la tomcat/webapps


ActiveMQのインストール


ActiveMQをダウンロードして展開し、起動する
tar xzvf apache-activemq-5.15.13-bin.tar.gz
rm apache-activemq-5.15.13-bin.tar.gz

cd apache-activemq-5.15.13/bin
./activemq start


Alfrescoの起動確認

ここまでの手順が正しくできているかどうかの確認のため、一度Alfrescoを起動します。


Tomcatを起動する
cd /opt/alfresco
tomcat/bin/startup.sh


tomcat/logs/catalina.out を監視する
tail -f tomcat/logs/catalina.out
※ Server startup in 47069 ms のようなログが出ることを確認する
※ まだ検索に使うSolrはインストールしていないため、ログにSolr関連のエラーが出力されるかと思いますが、現段階では気にしなくて大丈夫です。
Solrのインストールはその2としてご紹介します。

ブラウザから以下のURLにアクセスして、admin/adminでログインできるか確認する
http://localhost:8080/share

Tomcatを停止する場合は以下のコマンドを使用する
tomcat/bin/shutdown.sh

※ 停止できないことがあるのでその場合はプロセスIDを調べてkillコマンドで停止します

今回はSolrなしでAlfrescoを起動してみるところまでをご紹介しました。
次回はSolrをインストールしAlfrescoを起動する方法をご紹介します。

No comments: