前回までの記事:
Alfrescoを正常に動作させるためには、Alfrescoのバージョンに合わせて環境を整えておく必要がある。今回は7.1.0.1版を使うので、Alfrescoの7.1版ドキュメントの、"Supported Platforms"タブで、7.1向けの製品と版数を確認しておく。なお、たとえばOSには、RHEL、CentOS、Ubuntu、Windows、Amazon 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)上でシステムを構築した。
- SELinux無効化
まず初めにやっておく。Alfrescoは複数サービスと連携しているので、SELinuxを有効にしておくと、どこで思わぬ落とし穴にはまるかわかったものではない。
# vi /etc/selinux/config #SELINUX=enforcing SELINUX=disabled # shutdown -r now # getenforce Disabled
- JAVA環境設定
デフォルトでは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インストール
ブラウザとしては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