Alfresco Community構築2:環境整備

前回までの記事:

Alfresco Community構築1:概要

 

Alfrescoを正常に動作させるためには、Alfrescoのバージョンに合わせて環境を整えておく必要がある。今回は7.1.0.1版を使うので、Alfrescoの7.1版ドキュメントの、"Supported Platforms"タブで、7.1向けの製品と版数を確認しておく。なお、たとえばOSには、RHELCentOSUbuntuWindowsAmazon Linuxなど候補が複数あるので、自分好みのものを選択する。ここでは、OSはRHEL、DBはPostgreSQLである。バージョンはRHEL8.4、PostgreSQL13.3、ActiveMQ5.16、Tomcat9、OpenJDK11.0.7、Alfresco Search Services2.0、ImageMagick7.1.0-16、LibreOffice7.0.6。ただ、マイナーバージョンを含めて必ずこのバージョンでないといけない、というわけでもないらしい。実際、RHELは当時最新の8.5で問題なかった。

というわけで、RHEL8.5のインストールが終わったところから話を始める。ちなみに、物理マシンではなく仮想マシン(VMware)上でシステムを構築した。

まず初めにやっておく。Alfrescoは複数サービスと連携しているので、SELinuxを有効にしておくと、どこで思わぬ落とし穴にはまるかわかったものではない。

# vi /etc/selinux/config
#SELINUX=enforcing
SELINUX=disabled
# shutdown -r now
# getenforce
Disabled

デフォルトではJAVA環境はない。念のために開発環境も入れておく。

# yum install java-11-openjdk
# java -version
openjdk version "11.0.13" 2021-10-19 LTS
OpenJDK Runtime Environment 18.9 (build 11.0.13+8-LTS)
OpenJDK 64-Bit Server VM 18.9 (build 11.0.13+8-LTS, mixed mode, sharing)
# yum install java-devel
# java -version
openjdk version "1.8.0_312"

なんと、思わぬ事態。Java8まで入ってしまい、かつシステムデフォルトがそちらに設定されてしまった。Java11がシステムデフォルトになるよう追加設定。

# export LANG=C
# PKG_NAME=java-11-openjdk
# JAVA_TO_SELECT=$(alternatives --display java | grep "family $PKG_NAME" | cut -d' ' -f1)
# echo $JAVA_TO_SELECT
/usr/lib/jvm/java-11-openjdk-11.0.13.0.8-3.el8_5.x86_64/bin/java
# alternatives --set java $JAVA_TO_SELECT
# java -version
openjdk version "11.0.13" 2021-10-19 LTS
OpenJDK Runtime Environment 18.9 (build 11.0.13+8-LTS)
OpenJDK 64-Bit Server VM 18.9 (build 11.0.13+8-LTS, mixed mode, sharing)
  • GUI環境設定

デフォルトはコマンドラインのみの受け付けのため。ホスト上でブラウザを立ち上げて確認することもあるだろう。

# dnf groupinstall "Server with GUI"
# systemctl set-default graphical
# reboot
  • 開発環境設定

gcc等の開発ツールが入っておらず、ソースからのコンパイルができないため。

# dnf groupinstall "Development Tools"

ブラウザとしてはFirefoxを入れておく。

# yum install firefox
  • メールサーバ設定

デフォルトでは何も設定されていない。postfixにより、Alfrescoからのメール送信ができるようにしておく。

# yum install postfix mailx
# vi /etc/postfix/main.cf
myhostname = doc.xxx.yyy.jp
mydomain = xxx.yyy.jp
myorigin = $mydomain
smtpd_banner = $myhostname ESMTP
# systemctl start postfix
# systemctl enable postfix

 

以上で基本的なシステム環境の整備は終了。次からは、Alfrescoが利用するソフトウェア類の導入。

"Supported Platforms"の版より上の、当時の最新版の7.1.8を導入(運用では問題なかった)。こちらからダウンロードできる。ここで、本体と日本語パッケージを入手し、適当なディレクトリに置いてインストール。

【本体】
# tar zxf LibreOffice_7.1.8_Linux_x86-64_rpm.tar.gz
# cd LibreOffice_7.1.8.1_Linux_x86-64_rpm/RPMS
# yum install *
【日本語パッケージ】
# tar zxf LibreOffice_7.1.8_Linux_x86-64_rpm_langpack_ja.tar.gz
# cd LibreOffice_7.1.8.1_Linux_x86-64_rpm_langpack_ja/RPMS
# yum install *

これも当時の最新版の7.1.0-17をインストール。パッケージはこちらから取ってくる。

# tar zxf ImageMagick-7.1.0-17.tar.gz
# cd ImageMagick-7.1.0-17
# ./configure
# make
# make install

当時の最新版の9.0.56をインストールした。Alfresco 固有のコマンドで起動するので、 tomcat 専用の起動スクリプトでの自動起動設定はしない。Coreパッケージはこちらから取得。

# tar zxf apache-tomcat-9.0.56.tar.gz
# mv apache-tomcat-9.0.56 /usr/local
# useradd -r tomcat
# chown -R tomcat:tomcat /usr/local/apache-tomcat-9.0.56

firewall に 8080/8443 ポートの穴を開けておく。

# firewall-cmd --zone=public --permanent –add-port=8080/tcp
# firewall-cmd --zone=public --permanent –add-port=8443/tcp
# firewall-cmd –reload

当時の最新版5.16.3インストール。パッケージはこちらから。

# tar zxf apache-activemq-5.16.3-bin.tar.gz
# mv apache-activemq-5.16.3 /opt
# useradd activemq
# chown -R activemq:activemq /opt/apache-activemq-5.16.3
# ln -s /opt/apache-activemq-5.16.3 /opt/activemq

起動スクリプトを作成し、システム立ち上がり時に自動起動するよう設定する。

# vi /etc/systemd/system/activemq.service
[Unit]
Description=Apache ActiveMQ Message Broker
After=network.target
[Service]
Type=forking
User=activemq
Group=activemq
WorkingDirectory=/opt/activemq/bin
ExecStart=/opt/activemq/bin/activemq start
ExecStop=/opt/activemq/bin/activemq stop
Restart=on-abort[Install]
WantedBy=multi-user.target
# systemctl daemon-reload
# systemctl start activemq
# systemctl enable activemq

firewallに穴開け。

# firewall-cmd --zone=public --permanent –add-port=8161/tcp
# firewall-cmd –reload

当時の最新版は13.3-2。これはepelを使ってインストールする。

# wget https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
# rpm -ivh epel-release-latest-8.noarch.rpm
# yum module install postgresql:13/server

DB初期化と自動起動設定。

# postgresql-setup –initdb
# systemctl start postgresql.service
# systemctl enable postgresql.service

postgresユーザに"passwd postgres"でパスワードを設定後、 postgresユーザになってAlfresco向けカスタマイズ実施。

# su - postgres
$ psql
postgres=# CREATE DATABASE alfresco ENCODING 'utf8';
postgres=# CREATE ROLE alfresco LOGIN PASSWORD 'alfresco';
postgres=# GRANT ALL ON DATABASE alfresco TO alfresco;
postgres=# ALTER USER postgres WITH ENCRYPTED PASSWORD 'postgres';

続いてident認証を変更。これもpostgresユーザで行う。

$ vi /var/lib/pgsql/data/pg_hba.conf
# "local" is for Unix domain socket connections only
#local all    all            peer
local all    all            trust
# IPv4 local connections:
#host all    all    127.0.0.1/32    ident
host all    all    127.0.0.1/32    trust
# IPv6 local connections:
#host all    all    ::1/128    ident
host all    all    ::1/128    trust
# Allow replication connections from localhost, by a user with the
# replication privilege.
#local replication all        peer
#host replication all    127.0.0.1/32    ident
#host replication all    ::1/128    ident
local replication all        trust
host replication all    127.0.0.1/32    trust
host replication all    ::1/128    trust

サービス再起動。

# systemctl restart postgresql.service

 

以上で、Alfresco導入への環境は整った。

 

2024/11/28(木)Blog 9