Compare commits

..

33 Commits

Author SHA1 Message Date
c088f81a2b Merge branch 'acs-enterprise' into ags-enterprise 2023-10-26 14:42:48 -04:00
5fc2127922 Merge branch 'ags' into ags-enterprise 2023-10-26 14:42:39 -04:00
31a89f370d Merge branch 'acs' into ags 2023-10-26 14:41:42 -04:00
c0878c27f0 Merge branch 'acs' into acs-enterprise 2023-10-26 14:28:44 -04:00
df452d73a0 removed mem_limit from proxy 2023-10-26 14:13:48 -04:00
aa136e1f2f added license file README 2023-10-26 08:50:32 -04:00
fa90205f6f Merge branch 'ags' into ags-enterprise 2023-10-25 22:26:23 -04:00
3d4f0640ab Merge branch 'acs-enterprise' into ags-enterprise 2023-10-25 22:26:19 -04:00
8a53f02159 Merge branch 'acs' into ags 2023-10-25 22:23:25 -04:00
38b5f8dc36 Merge branch 'acs' into acs-enterprise 2023-10-25 21:47:34 -04:00
ef221d9c7a Merge branch 'acs-base' into acs 2023-10-25 20:11:38 -04:00
57af0a20b1 ACS v7.4.1.1 2023-10-25 20:11:15 -04:00
76e4287aa1 Merge branch 'proxy' into acs-base 2023-10-25 20:08:28 -04:00
241a3e47ea Merge branch 'base' into proxy 2023-10-25 18:07:00 -04:00
c2a9679ede update comment 2023-10-25 18:05:39 -04:00
4336b63b85 Merge branch 'acs-enterprise' into ags-enterprise 2022-11-01 17:23:04 -04:00
df0a91920b Merge branch 'ags' into ags-enterprise 2022-11-01 17:22:19 -04:00
18889ab89d Merge branch 'acs' into ags 2022-11-01 17:20:40 -04:00
8fd11ed1d6 Merge branch 'acs' into acs-enterprise 2022-11-01 16:26:33 -04:00
7511eba729 added memory limit 2022-11-01 14:54:47 -04:00
173de2375e Merge branch 'acs-base' into acs 2022-11-01 14:52:59 -04:00
8e3301877a parameterized docker image tags 2022-11-01 14:51:11 -04:00
8b4e45c2e2 Merge branch 'proxy' into acs-base 2022-11-01 14:49:06 -04:00
9e1a819e8b Merge branch 'base' into proxy 2022-11-01 14:48:11 -04:00
10e7f81163 advancing to docker v3 2022-11-01 14:46:58 -04:00
481e1bb38d Merge branch 'acs-base' into acs 2022-11-01 14:22:57 -04:00
29f254a68e updated to ACS v7.3.0 2022-11-01 14:19:58 -04:00
184c1bb158 Merge branch 'ags' into ags-enterprise 2021-07-30 16:11:27 -04:00
d0e042a9c1 Merge branch 'acs-enterprise' into ags-enterprise 2021-07-30 16:09:20 -04:00
da93d4ea48 increased AGS platform memory limit min 2021-07-30 15:55:53 -04:00
01a5d97ed7 Merge branch 'acs' into ags 2021-07-30 15:55:20 -04:00
ad948f3f08 Merge branch 'acs' into acs-enterprise 2021-07-30 15:54:12 -04:00
b8016f4ac7 updated ACS memory limits 2021-07-30 15:52:07 -04:00
5 changed files with 40 additions and 251 deletions

4
.env
View File

@@ -4,3 +4,7 @@ ALFRESCO_LICENSE_DIR=~/alfresco/license
PROXY_PROTOCOL=http
PROXY_HOST=localhost
PROXY_PORT=8080
ACS_TAG=7.4.1.1
AAMQ_TAG=latest
POSTGRES_TAG=13

View File

@@ -3,3 +3,11 @@
This Git Repository intends to represent environments in Docker Compose. All environments are effectively a derivative of other environments. The original environment is the environment represented by the `base` branch. All derivative environments are represented by other branches. Those branches are named in the format `{core}.{parent}`.
## Licensing
This version of Alfresco requires licensing.
### ACS Enterprise
The enterprise version of ACS requires a license file for it to work for more than 2 days. This means it isn't really required, but it is becomes important when you utilize any `persist` branch. For licensing to work, you must place your license file in the following directory relative to the user home directory that runs the Docker Compose command: `alfresco/license/acs`. There must be just one file in there that ends in `.lic`.

View File

@@ -1,53 +1,39 @@
# Sourced from https://github.com/Alfresco/acs-deployment/blob/4.0.3/docker-compose/docker-compose.yml
# Originally sourced from https://github.com/Alfresco/acs-deployment/blob/4.0.3/docker-compose/docker-compose.yml
#
# Using version 2 as 3 does not support resource constraint options (cpu_*, mem_* limits) for non swarm mode in Compose
version: "2"
version: "3"
services:
platform:
image: quay.io/alfresco/alfresco-governance-repository-enterprise:V3.4-latest
mem_limit: 1700m
image: quay.io/alfresco/alfresco-governance-repository-enterprise:${ACS_TAG}
environment:
JAVA_TOOL_OPTIONS: "
-Dencryption.keystore.type=JCEKS
-Dencryption.cipherAlgorithm=DESede/CBC/PKCS5Padding
-Dencryption.keyAlgorithm=DESede
-Dencryption.keystore.location=/usr/local/tomcat/shared/classes/alfresco/extension/keystore/keystore
-Dmetadata-keystore.password=mp6yc0UD9e
-Dmetadata-keystore.aliases=metadata
-Dmetadata-keystore.metadata.password=oKIWzVdEdA
-Dmetadata-keystore.metadata.algorithm=DESede
"
JAVA_OPTS: "
-Xms512m -Xmx1g
-Ddb.driver=org.postgresql.Driver
-Ddb.username=alfresco
-Ddb.password=alfresco
-Ddb.url=jdbc:postgresql://postgres-acs:5432/alfresco
-Dindex.subsystem.name=solr6
-Dsolr.host=search
-Dsolr.port=8983
-Dsolr.secureComms=none
-Dshare.host=${PROXY_HOST}
-Dshare.port=${PROXY_PORT}
-Dshare.protocol=${PROXY_PROTOCOL}
-Dindex.subsystem.name=noindex
-Dalfresco.host=${PROXY_HOST}
-Dalfresco.port=${PROXY_PORT}
-Dalfresco.protocol=${PROXY_PROTOCOL}
-Daos.baseUrlOverwrite=${PROXY_PROTOCOL}://${PROXY_HOST}:${PROXY_PORT}/alfresco/aos
-Dmessaging.broker.url=\"failover:(nio://activemq:61616)?timeout=3000&jms.useCompression=true\"
-Ddeployment.method=DOCKER_COMPOSE
-DlocalTransform.core-aio.url=http://transform-core-aio:8090/
-Dalfresco-pdf-renderer.url=http://transform-core-aio:8090/
-Djodconverter.url=http://transform-core-aio:8090/
-Dimg.url=http://transform-core-aio:8090/
-Dtika.url=http://transform-core-aio:8090/
-Dtransform.misc.url=http://transform-core-aio:8090/
-Dcsrf.filter.enabled=false
-XX:MinRAMPercentage=50 -XX:MaxRAMPercentage=80
-Dtransform.service.enabled=true
-Dcors.enabled=false
-Dtransform.service.enabled=false
-Dlocal.transform.service.enabled=false
-Dtransform.service.url=http://transform-router:8095
-Dsfs.url=http://shared-file-store:8099
-Dalfresco-pdf-renderer.url=http://transform-engine-aio:8090
-Djodconverter.url=http://transform-engine-aio:8090
-Dimg.url=http://transform-engine-aio:8090
-Dtika.url=http://transform-engine-aio:8090
-Dtransform.misc.url=http://transform-engine-aio:8090
-Ddsync.service.uris=${PROXY_PROTOCOL}://${PROXY_HOST}:${PROXY_PORT}/sync
-Dsystem.content.eagerOrphanCleanup=true
-Dsystem.content.orphanProtectDays=0
-Djodconverter.enabled=false
@@ -55,185 +41,28 @@ services:
depends_on:
- postgres-acs
- activemq
- shared-file-store
volumes:
- "$ALFRESCO_LICENSE_DIR/acs:/usr/local/tomcat/shared/classes/alfresco/extension/license:ro"
transform-router:
image: quay.io/alfresco/alfresco-transform-router:1.3.1
environment:
ACTIVEMQ_URL: "nio://activemq:61616"
CORE_AIO_URL : "http://transform-core-aio:8090"
FILE_STORE_URL: "http://shared-file-store:8099/alfresco/api/-default-/private/sfs/versions/1/file"
depends_on:
- activemq
- shared-file-store
transform-core-aio:
image: alfresco/alfresco-transform-core-aio:2.3.6
environment:
ACTIVEMQ_URL: "nio://activemq:61616"
FILE_STORE_URL: "http://shared-file-store:8099/alfresco/api/-default-/private/sfs/versions/1/file"
depends_on:
- activemq
- shared-file-store
shared-file-store:
image: alfresco/alfresco-shared-file-store:0.10.0
volumes:
- shared-file-store-volume:/tmp/Alfresco/sfs
transform-core-aio:
image: alfresco/alfresco-transform-core-aio:2.3.6
share:
image: quay.io/alfresco/alfresco-governance-share-enterprise:V3.4-latest
mem_limit: 512m
environment:
REPO_HOST: "platform"
CSRF_FILTER_REFERER: "${PROXY_PROTOCOL}://${PROXY_HOST}(:${PROXY_PORT})?/?.*"
CSRF_FILTER_ORIGIN: "${PROXY_PROTOCOL}://${PROXY_HOST}(:${PROXY_PORT})?"
JAVA_OPTS: "
-Dshare.host=${PROXY_HOST}
-Dshare.port=${PROXY_PORT}
-Dshare.protocol=${PROXY_PROTOCOL}
-Dalfresco.host=${PROXY_HOST}
-Dalfresco.port=${PROXY_PORT}
-Dalfresco.protocol=${PROXY_PROTOCOL}
"
postgres-acs:
image: postgres:11.7
mem_limit: 512m
image: postgres:${POSTGRES_TAG}
environment:
- POSTGRES_PASSWORD=alfresco
- POSTGRES_USER=alfresco
- POSTGRES_DB=alfresco
POSTGRES_PASSWORD: alfresco
POSTGRES_USER: alfresco
POSTGRES_DB: alfresco
command: postgres -c max_connections=300 -c log_min_messages=LOG
search:
image: alfresco/alfresco-search-services:2.0.1
mem_limit: 2g
environment:
- SOLR_ALFRESCO_HOST=platform
- SOLR_ALFRESCO_PORT=8080
- SOLR_SOLR_HOST=search
- SOLR_SOLR_PORT=8983
- SOLR_CREATE_ALFRESCO_DEFAULTS=alfresco,archive
- ALFRESCO_SECURE_COMMS=none
activemq:
image: alfresco/alfresco-activemq:5.15.8
mem_limit: 256m
image: alfresco/alfresco-activemq:${AAMQ_TAG}
environment:
ACTIVEMQ_OPTS_MEMORY: -Xms64m -Xmx256m
ACTIVEMQ_ADMIN_LOGIN: alfresco
ACTIVEMQ_ADMIN_PASSWORD: alfresco
sync:
image: quay.io/alfresco/service-sync:3.3.3.1
mem_limit: 512m
environment:
JAVA_OPTS : "
-Dsql.db.driver=org.postgresql.Driver
-Dsql.db.url=jdbc:postgresql://postgres-acs:5432/alfresco
-Dsql.db.username=alfresco
-Dsql.db.password=alfresco
-Dmessaging.broker.host=activemq
-Drepo.hostname=platform
-Drepo.port=8080
-Ddw.server.applicationConnectors[0].type=http
-XX:MinRAMPercentage=50 -XX:MaxRAMPercentage=80
"
depends_on:
- postgres-acs
- activemq
digital-workspace:
image: quay.io/alfresco/alfresco-digital-workspace:2.0.0-adw
mem_limit: 128m
environment:
BASE_PATH: ./
APP_CONFIG_ECM_HOST: "${PROXY_PROTOCOL}://${PROXY_HOST}:${PROXY_PORT}"
APP_BASE_SHARE_URL: "${PROXY_PROTOCOL}://${PROXY_HOST}:${PROXY_PORT}/#/preview/s"
activiti-app:
image: alfresco/process-services:1.11.1.1
mem_limit: 512m
environment:
ACTIVITI_DATASOURCE_USERNAME: alfresco
ACTIVITI_DATASOURCE_PASSWORD: alfresco
ACTIVITI_DATASOURCE_DRIVER: org.postgresql.Driver
ACTIVITI_HIBERNATE_DIALECT: org.hibernate.dialect.PostgreSQLDialect
ACTIVITI_DATASOURCE_URL: 'jdbc:postgresql://postgres-aps:5432/activiti?characterEncoding=UTF-8'
ACTIVITI_ES_SERVER_TYPE: rest
ACTIVITI_ES_REST_CLIENT_ADDRESS: search-aps
ACTIVITI_ES_REST_CLIENT_PORT: 9200
ACTIVITI_ES_REST_CLIENT_SCHEMA: http
JAVA_OPTS: "-XX:MinRAMPercentage=50 -XX:MaxRAMPercentage=80"
depends_on:
- postgres-aps
volumes:
- "$ALFRESCO_LICENSE_DIR/aps:/root/.activiti/enterprise-license:ro"
activiti-admin:
image: alfresco/process-services-admin:1.11.1.1
mem_limit: 256m
environment:
ACTIVITI_ADMIN_DATASOURCE_USERNAME: alfresco
ACTIVITI_ADMIN_DATASOURCE_PASSWORD: alfresco
ACTIVITI_ADMIN_DATASOURCE_DRIVER: org.postgresql.Driver
ACTIVITI_ADMIN_HIBERNATE_DIALECT: org.hibernate.dialect.PostgreSQLDialect
ACTIVITI_ADMIN_DATASOURCE_URL: 'jdbc:postgresql://postgres-aps-admin:5432/activiti-admin?characterEncoding=UTF-8'
ACTIVITI_ADMIN_REST_APP_HOST: http://activiti-app
ACTIVITI_ADMIN_REST_APP_PORT: 8080
JAVA_OPTS: "-XX:MinRAMPercentage=50 -XX:MaxRAMPercentage=80"
depends_on:
- postgres-aps-admin
- activiti-app
postgres-aps:
image: postgres:11.6
mem_limit: 256m
environment:
POSTGRES_DB: activiti
POSTGRES_USER: alfresco
POSTGRES_PASSWORD: alfresco
command: postgres -c max_connections=300 -c log_min_messages=LOG
postgres-aps-admin:
image: postgres:11.6
mem_limit: 128m
environment:
POSTGRES_DB: activiti-admin
POSTGRES_USER: alfresco
POSTGRES_PASSWORD: alfresco
command: postgres -c max_connections=50 -c log_min_messages=LOG
search-aps:
image: elasticsearch:7.6.0
mem_limit: 512m
environment:
discovery.type: single-node
ES_JAVA_OPTS: "-Xms128m -Xmx256m"
ulimits:
memlock:
soft: -1
hard: -1
depends_on:
- activiti-app
proxy:
build: ./nginx-ingress
image: local/nginx-ingress:acs-sync-share-adw-aps
image: local/nginx-ingress:acs
ports:
- 8080:8080
depends_on:
- platform
- sync
- share
- digital-workspace
- activiti-app
- activiti-admin
volumes:
shared-file-store-volume:
driver_opts:
type: tmpfs
device: tmpfs

View File

@@ -4,26 +4,6 @@ if [[ $ACS_PLATFORM_URL ]]; then
sed -i s%http:\/\/platform:8080%"$ACS_PLATFORM_URL"%g /etc/nginx/nginx.conf
fi
if [[ $ACS_SYNC_URL ]]; then
sed -i s%http:\/\/sync:9090%"$ACS_SYNC_URL"%g /etc/nginx/nginx.conf
fi
if [[ $ACS_SHARE_URL ]]; then
sed -i s%http:\/\/share:8080%"$ACS_SHARE_URL"%g /etc/nginx/nginx.conf
fi
if [[ $ADW_URL ]]; then
sed -i s%http:\/\/digital-workspace:8080%"$ADW_URL"%g /etc/nginx/nginx.conf
fi
if [[ $APS_APP_URL ]]; then
sed -i s%http:\/\/activiti-app:8080%"$APS_APP_URL"%g /etc/nginx/nginx.conf
fi
if [[ $APS_ADMIN_URL ]]; then
sed -i s%http:\/\/activiti-admin:8080%"$APS_ADMIN_URL"%g /etc/nginx/nginx.conf
fi
if [[ $ACCESS_LOG ]]; then
sed -i s%\#ENV_ACCESS_LOG%"access_log $ACCESS_LOG;"%g /etc/nginx/nginx.conf
fi

View File

@@ -48,37 +48,5 @@ http {
# If using external proxy / load balancer (for initial redirect if no trailing slash)
absolute_redirect off;
}
location /sync/ {
proxy_pass http://sync:9090/alfresco/;
}
location /activiti-app/ {
proxy_pass http://activiti-app:8080;
# If using external proxy / load balancer (for initial redirect if no trailing slash)
absolute_redirect off;
}
location /activiti-admin/ {
proxy_pass http://activiti-admin:8080;
# If using external proxy / load balancer (for initial redirect if no trailing slash)
absolute_redirect off;
}
location /share/ {
proxy_pass http://share:8080;
# If using external proxy / load balancer (for initial redirect if no trailing slash)
absolute_redirect off;
}
location /workspace/ {
proxy_pass http://digital-workspace:8080/;
# If using external proxy / load balancer (for initial redirect if no trailing slash)
absolute_redirect off;
}
}
}