Alfresco Content Services のインストール(Linux と Docker Compose)
はじめに
このページでは Docker Compose を使用して、Alfresco Content Services を CentOS 7.5 にインストールする手順について説明します。バージョンは 6.2.0 を想定しています。
あらかじめ以下のミドルウェアが入っていることが前提となります。
ミドルウェア | |
|---|---|
| 1 | Git |
| 2 | Docker |
| 3 | Docker Compose |
ここで紹介している Docker Compose で実行する手順はトライアル・評価利用の場合のみサポートされており、本番での利用はサポートされておりません。
1.docker-compose.yml ファイルの準備
Docker Compose を使用する際には、設定情報を記載した docker-compose.yml ファイルが必要になります。
Alfresco の公式サイトから評価を申し込んだ場合はメールで docker-compose.yml ファイルへのリンクが送付されます。
Alfresco 社が公開しているリポジトリにある docker-compose.yml ファイルを使用する場合は、次の手順を実行します。
GitHub のリポジトリをサーバにクローンします。
実行コマンド
# git clone https://github.com/Alfresco/acs-deployment.gitクローンしたらディレクトリを移動しておきます。
実行コマンド
# cd acs-deployment/docker-compose2.設定情報の整備
Alfresco の有償版の Docker イメージは Quay.io というサイトに保存されています。Quay.io のアカウントを持っている場合は次のコマンドを実行します。
実行コマンド
# docker login quay.io標準の設定のまま Docker Compose を使用した場合、立ち上げた Alfresco Content Services のドキュメントのプレビュー画面で日本語が文字化けしてしまうので、それを回避するために日本語のフォントを入れる設定を加えた Dockerfile_LibreOffice ファイルを作成します。
実行コマンド
# vi Dockerfile_LibreOffice編集内容
FROM alfresco/alfresco-libreoffice:2.1.0
RUN yum -y install ipa-gothic-fonts-* ipa-pgothic-fonts-* ipa-mincho-fonts-* ipa-pmincho-fonts-* vlgothic-fonts-* vlgothic-p-fonts-*docker-compose.yml ファイルを修正し、LibreOffice のコンテナの設定箇所に作成した Dockerfile_LifreOffice ファイルを使用する設定を記載します。
実行コマンド
# vi docker-compose.yml編集内容
# This docker-compose file will spin up an ACS cluster on a local host or on a server and it requires a minimum of 13GB Memory to distribute among containers.
#
# For performance tuning, assign the container memory and give a percentage of it to the JVM.
# Use either the -Xms,-Xmx flags or the newly added flags in java 10+: -XX:MaxRAMPercentage and -XX:MinRAMPercentage. More details here: https://www.oracle.com/technetwork/java/javase/10-relnote-issues-4108729.html
# Note: The docker-compose file from github.com is a limited trial that goes into read-only mode after 2 days.
# Get the latest docker-compose.yml file with a 30-day trial license by accessing the Alfresco Content Services trial download page at:
# https://www.alfresco.com/platform/content-services-ecm/trial/download
# Using version 2 as 3 does not support resource constraint options (cpu_*, mem_* limits) for non swarm mode in Compose
version: "2"
services:
alfresco:
image: alfresco/alfresco-content-repository:6.2.0
mem_limit: 1700m
environment:
JAVA_OPTS: "
-Ddb.driver=org.postgresql.Driver
-Ddb.username=alfresco
-Ddb.password=alfresco
-Ddb.url=jdbc:postgresql://postgres:5432/alfresco
-Dsolr.host=solr6
-Dsolr.port=8983
-Dsolr.secureComms=none
-Dsolr.base.url=/solr
-Dindex.subsystem.name=solr6
-Dshare.host=127.0.0.1
-Dshare.port=8080
-Dalfresco.host=localhost
-Dalfresco.port=8080
-Daos.baseUrlOverwrite=http://localhost:8080/alfresco/aos
-Dmessaging.broker.url=\"failover:(nio://activemq:61616)?timeout=3000&jms.useCompression=true\"
-Ddeployment.method=DOCKER_COMPOSE
-Dtransform.service.enabled=true
-Dtransform.service.url=http://transform-router:8095
-Dsfs.url=http://shared-file-store:8099/
-Dlocal.transform.service.enabled=true
-DlocalTransform.pdfrenderer.url=http://alfresco-pdf-renderer:8090/
-DlocalTransform.imagemagick.url=http://imagemagick:8090/
-DlocalTransform.libreoffice.url=http://libreoffice:8090/
-DlocalTransform.tika.url=http://tika:8090/
-DlocalTransform.misc.url=http://transform-misc:8090/
-Dlegacy.transform.service.enabled=true
-Dalfresco-pdf-renderer.url=http://alfresco-pdf-renderer:8090/
-Djodconverter.url=http://libreoffice:8090/
-Dimg.url=http://imagemagick:8090/
-Dtika.url=http://tika:8090/
-Dtransform.misc.url=http://transform-misc:8090/
-Dcsrf.filter.enabled=false
-Ddsync.service.uris=http://localhost:9090/alfresco
-Xms1500m -Xmx1500m
"
transform-router:
mem_limit: 512m
image: quay.io/alfresco/alfresco-transform-router:1.1.0
environment:
JAVA_OPTS: " -Xms256m -Xmx512m"
ACTIVEMQ_URL: "nio://activemq:61616"
IMAGEMAGICK_URL: "http://imagemagick:8090"
PDF_RENDERER_URL : "http://alfresco-pdf-renderer:8090"
LIBREOFFICE_URL : "http://libreoffice:8090"
TIKA_URL : "http://tika:8090"
MISC_URL : "http://transform-misc:8090"
FILE_STORE_URL: "http://shared-file-store:8099/alfresco/api/-default-/private/sfs/versions/1/file"
ports:
- 8095:8095
links:
- activemq
alfresco-pdf-renderer:
image: alfresco/alfresco-pdf-renderer:2.1.0
mem_limit: 1g
environment:
JAVA_OPTS: " -Xms256m -Xmx512m"
ACTIVEMQ_URL: "nio://activemq:61616"
FILE_STORE_URL: "http://shared-file-store:8099/alfresco/api/-default-/private/sfs/versions/1/file"
ports:
- 8090:8090
links:
- activemq
imagemagick:
image: alfresco/alfresco-imagemagick:2.1.0
mem_limit: 1g
environment:
JAVA_OPTS: " -Xms256m -Xmx512m"
ACTIVEMQ_URL: "nio://activemq:61616"
FILE_STORE_URL: "http://shared-file-store:8099/alfresco/api/-default-/private/sfs/versions/1/file"
ports:
- 8091:8090
links:
- activemq
libreoffice:
## image: となっていたものを build: 以下に変更
build: ←変更
context: . ←追加
dockerfile: Dockerfile_LibreOffice ←追加
mem_limit: 1g
environment:
JAVA_OPTS: " -Xms256m -Xmx512m"
ACTIVEMQ_URL: "nio://activemq:61616"
FILE_STORE_URL: "http://shared-file-store:8099/alfresco/api/-default-/private/sfs/versions/1/file"
ports:
- 8092:8090
links:
- activemq
tika:
image: alfresco/alfresco-tika:2.1.0
mem_limit: 1g
environment:
JAVA_OPTS: " -Xms256m -Xmx512m"
ACTIVEMQ_URL: "nio://activemq:61616"
FILE_STORE_URL: "http://shared-file-store:8099/alfresco/api/-default-/private/sfs/versions/1/file"
ports:
- 8093:8090
links:
- activemq
transform-misc:
image: alfresco/alfresco-transform-misc:2.1.0
mem_limit: 1g
environment:
JAVA_OPTS: " -Xms256m -Xmx512m"
ACTIVEMQ_URL: "nio://activemq:61616"
FILE_STORE_URL: "http://shared-file-store:8099/alfresco/api/-default-/private/sfs/versions/1/file"
ports:
- 8094:8090
links:
- activemq
shared-file-store:
image: alfresco/alfresco-shared-file-store:0.5.3
mem_limit: 512m
environment:
JAVA_OPTS: " -Xms256m -Xmx512m"
scheduler.content.age.millis: 86400000
scheduler.cleanup.interval: 86400000
ports:
- 8099:8099
volumes:
- shared-file-store-volume:/tmp/Alfresco/sfs
share:
image: alfresco/alfresco-share:6.2.0
mem_limit: 1g
environment:
REPO_HOST: "alfresco"
REPO_PORT: "8080"
JAVA_OPTS: "
-Xms500m
-Xmx500m
-Dalfresco.host=localhost
-Dalfresco.port=8080
-Dalfresco.context=alfresco
-Dalfresco.protocol=http
"
postgres:
image: postgres:11.4
mem_limit: 512m
environment:
- POSTGRES_PASSWORD=alfresco
- POSTGRES_USER=alfresco
- POSTGRES_DB=alfresco
command: postgres -c max_connections=300 -c log_min_messages=LOG
ports:
- 5432:5432
solr6:
image: alfresco/alfresco-search-services:1.4.0
mem_limit: 2g
environment:
#Solr needs to know how to register itself with Alfresco
- SOLR_ALFRESCO_HOST=alfresco
- SOLR_ALFRESCO_PORT=8080
#Alfresco needs to know how to call solr
- SOLR_SOLR_HOST=solr6
- SOLR_SOLR_PORT=8983
#Create the default alfresco and archive cores
- SOLR_CREATE_ALFRESCO_DEFAULTS=alfresco,archive
#HTTP by default
- ALFRESCO_SECURE_COMMS=none
- "SOLR_JAVA_MEM=-Xms2g -Xmx2g"
ports:
- 8083:8983 #Browser port
activemq:
image: alfresco/alfresco-activemq:5.15.8
mem_limit: 1g
ports:
- 8161:8161 # Web Console
- 5672:5672 # AMQP
- 61616:61616 # OpenWire
- 61613:61613 # STOMP
digital-workspace:
image: quay.io/alfresco/alfresco-digital-workspace:1.3.0
mem_limit: 128m
environment:
BASE_PATH: ./
proxy:
image: alfresco/alfresco-acs-nginx:3.0.1
mem_limit: 128m
depends_on:
- alfresco
- digital-workspace
ports:
- 8080:8080
links:
- digital-workspace
- alfresco
- share
sync-service:
image: quay.io/alfresco/service-sync:3.2.0
mem_limit: 1g
environment:
JAVA_OPTS : "
-Dsql.db.driver=org.postgresql.Driver
-Dsql.db.url=jdbc:postgresql://postgres:5432/alfresco
-Dsql.db.username=alfresco
-Dsql.db.password=alfresco
-Dmessaging.broker.host=activemq
-Drepo.hostname=alfresco
-Drepo.port=8080
-Ddw.server.applicationConnectors[0].type=http
-Xms1000m -Xmx1000m
"
ports:
- 9090:9090
volumes:
shared-file-store-volume:
driver_opts:
type: tmpfs
device: tmpfs3.起動
次のコマンドを実行して、Alfresco Content Services を起動します。
実行コマンド
# docker-compose up -d4.アクセス
正しく立ち上がっていれば、次の情報でアクセスすることができます。
項目名 | 設定値 | |
|---|---|---|
| 1 | ログイン URL | http://<IPアドレスもしくはホスト名>:8080/share |
| 2 | ユーザ名 | admin |
| 3 | パスワード | admin |
5.停止
Alfresco Content Services を停止する場合は、次のコマンドを実行します。
実行コマンド
# docker-compose stop