Alfresco の最新バージョンは Docker イメージで提供されるようになりました。お試しでやる分には簡単ですし、 Kubernetes とか使うのであればいいのですが、昔ながら war 配置によるセットアップもやりたいときは多いはず。
参考になるのは 公式のインストール案内です。
というわけでやってみましょう。
個人的な趣味により CentOS ではなく Ubuntu 18.04 を使います。JRE 8 と Tomcat 8.5 の組み合わせでいきます。
ファイルの準備
distribution zip を入手する必要があります。参考
名前や所属を入れるとダウンロードページに遷移します。
6.1 - General Release: 201901
Manual Deployment:
Distribution .zip | Alfresco Search Services 1.3.0.1.zip
Alfresco File Transfer Receiver 6.2.1.zip | Instructions
Containerized Deployment:
Docker | Instructions
ここから、
- Distribution .zip(alfresco-content-services-community-distribution-6.1.2-ga.zip)
- Alfresco Search Services 1.3.0.1.zip(alfresco-search-services-1.3.0.1.zip)
を入手します。
Java 8
最初はJava 12とか入れようかと思ったんですが新しすぎるとなぜかTomcatがこけることがわかったのでおとなしく8を入れることにします。後方互換どうなってるの。まあそこは本質じゃないのでいいとしましょう、とりあえず apt-get で入れていきましょう。
$ sudo apt-get install openjdk-8-jre
入りました
$ java -version
openjdk version "1.8.0_212"
OpenJDK Runtime Environment (build 1.8.0_212-8u212-b03-0ubuntu1.18.04.1-b03)
OpenJDK 64-Bit Server VM (build 25.212-b03, mixed mode)
PostgreSQL 11
plist 追加。
$ echo "deb http://apt.postgresql.org/pub/repos/apt/ bionic-pgdg main" | sudo tee -a /etc/apt/sources.list.d/pgdg.list
認証キー
$ curl https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add -
apt-get更新からインストールへ
$ sudo apt update
$ sudo apt upgrade
$ sudo apt install postgresql-11
できたかチェック
$ sudo su - postgres
$ psql -V
psql (PostgreSQL) 11.3 (Ubuntu 11.3-1.pgdg18.04+1)
alfrescoからつながるように外部接続を許可します。またAlfrescoの文書で指定されていた最大接続数を増やす作業を行います。
$ sudo vi /etc/postgresql/11/main/postgresql.conf
- listen_addresses = '*'
- max_connections = 275
を設定。
$ sudo vi /etc/postgresql/11/main/pg_hba.conf
ここに
host all all 192.168.1.1/24 md5
host all all 127.0.0.1/32 password
を追加して、再起動
sudo service postgresql restart
ユーザ alfresco と データベース alfresco を作成する。
Tomcat 8.5
Tomcat を入れます。
Alfresco文書で言うとこちらです
まずはアーカイブを取ってきます。Tomcat はもっとあたらしいものがありますが、Alfresco 6.0.1 サポート対象の Tomcat は 8.5.35 です(2019/4/23現在)ので、そのバージョンを取ってきましょう(8.5.xの最新でも動くような気はしますが)
$ wget https://archive.apache.org/dist/tomcat/tomcat-8/v8.5.35/bin/apache-tomcat-8.5.35.tar.gz
解凍して /opt 以下に移動します
$ sudo tar xzvf ~/apache-tomcat-8.5.35.tar.gz
$ sudo mv ~/apache-tomcat-8.5.35 /opt
tomcatユーザとtomcatグループを作って、tomcatのホームディレクトリの所有者を変更。
$ sudo useradd -M tomcat
$ sudo chown -R tomcat:tomcat /opt/apache-tomcat-8.5.35
Alfrescoのインストールに必要なディレクトリを掘っておきます。
$ sudo mkdir /opt/apache-tomcat-8.5.35/shared/
$ sudo mkdir /opt/apache-tomcat-8.5.35/shared/classes
$ sudo mkdir /opt/apache-tomcat-8.5.35/shared/lib
設定を追加します
sudo vi /opt/apache-tomcat-8.5.35/conf/catalina.properties
中ほどにあるshared.loaderを次のように修正。
shared.loader=${catalina.base}/shared/classes,${catalina.base}/shared/lib/*.jar
保存。
次にDBドライバを入れます。今回はPostgreSQLなのでこれ
$ wget https://jdbc.postgresql.org/download/postgresql-42.2.5.jar
$ sudo mv postgresql-42.2.5.jar /opt/apache-tomcat-8.5.35/lib/
次は server.xml を編集します。
sudo vi /opt/apache-tomcat-8.5.35/conf/server.xml
Connecter要素を以下に置き換え
<Connector port="8080"
protocol="HTTP/1.1"
URIEncoding="UTF-8"
connectionTimeout="20000"
scheme="https"
secure="true"
redirectPort="8443"
maxHttpHeaderSize="32768"/>
Alfrescoインストール
上の方で手に入れた alfresco-content-services-community-distribution-6.1.2-ga.zip を使います。wgetで直接落とせないので、ちょっとめんどう。
回答するといっぱいファイルがあります。中身はこちらを参照のこと。
/alf_data を /opt/alfresco 以下へコピーする
sudo mkdir /opt/alfresco
/webapps 以下のディレクトリをいったん全部消しておいて、/webapps にある WAR ファイルを から /webapps へ移動します。
/web-server 以下にある /conf /lib /shared を に上書きします。
/shared/classes/alfresco-global.properties.sample をもとに alfresco-global.properties を作成して
/shared/classes 以下に配置。
# Sample custom content and index data location
dir.root=/opt/alfresco/alf_data
#dir.keystore
# Solr indexing
index.subsystem.name=solr6
solr.secureComms=none
solr.port=8983
# Sample database connection properties
db.name=alfresco
db.username=alfresco
db.password=alfresco
db.host=localhost
db.port=5432
db.pool.max=100
# PostgreSQL connection
db.driver=org.postgresql.Driver
db.url=jdbc:postgresql://${db.host}:${db.port}/${db.name}
# URL Generation Parameters
#alfresco.context
#alfresco.host
#alfresco.port
#alfresco.protocol
#
#share.context
#share.host
#share.port
#share.protocol
Alfresco Search Services を入れる
インストール方法はこちらにあります。
追加設定
最後にTomcatの起動設定を書いておきます。
$ sudo touch /etc/systemd/system/tomcat.service
$ sudo vim /etc/systemd/system/tomcat.service
中身はこんな感じ。
[Unit]
Description=Apache Tomcat 9
After=network.target
[Service]
User=tomcat
Group=tomcat
Type=oneshot
PIDFile=/opt/apache-tomcat-8.5.35/tomcat.pid
RemainAfterExit=yes
ExecStart=/opt/apache-tomcat-8.5.35/bin/startup.sh
ExecStop=/opt/apache-tomcat-8.5.35/bin/shutdown.sh
ExecReStart=/opt/apache-tomcat-8.5.35/bin/shutdown.sh;/opt/apache-tomcat-8.5.35/bin/startup.sh
[Install]
WantedBy=multi-user.target
権限付与してから有効化
$ sudo chmod 755 /etc/systemd/system/tomcat.service
$ sudo systemctl enable tomcat
早速起動します。
sudo systemctl start tomcat
http://127.0.0.1:8080/ にアクセスして起動を確認。