Compare commits

..

23 Commits

Author SHA1 Message Date
3a6d3b1c1e Merge branch 'aps-base' into aps-persist-base 2023-10-25 18:49:43 -04:00
944397b02c removed aps-search 2023-10-25 18:48:58 -04:00
e0e190d987 APS v2.4.1 2023-10-25 18:33:38 -04:00
fc8a854920 removed elasticsearch 2023-10-25 18:32:39 -04:00
7e526e0e1e Merge branch 'proxy' into aps-base 2023-10-25 18:29:28 -04:00
3c1796b0b4 Merge branch 'aps-base' into aps-persist-base 2022-11-01 17:06:51 -04:00
dd967a17f2 parameterized APS versions 2022-11-01 17:06:07 -04:00
27a818fd22 Merge branch 'proxy' into aps-base 2022-11-01 17:00:56 -04:00
bcdd5e0525 Merge branch 'aps-base' into aps-persist-base 2021-04-19 08:26:57 -04:00
2d91d8bc08 renamed proxy from acs to aps 2021-04-19 08:26:13 -04:00
brian
ba6a0f70ad Merge branch 'aps-base' into aps-persist-base 2021-04-02 09:13:20 -04:00
6e0c055222 Merge branch 'proxy' into aps-base 2021-04-02 09:06:48 -04:00
912249c388 Merge branch 'aps-base' into aps-persist-base 2021-01-13 16:19:26 -05:00
20b41bbcb1 corrected misspelling 2021-01-13 15:39:02 -05:00
8ccf85d170 Merge branch 'aps-base' into aps-persist-base 2021-01-13 15:37:41 -05:00
a2619fac7b fixed license directory var 2021-01-13 15:37:06 -05:00
70eb1fd7fb Merge branch 'aps-base' into aps-persist-base 2021-01-13 15:35:37 -05:00
d7ed2df85e moved store 2021-01-13 15:35:30 -05:00
16aa444b19 removed excess file mapping 2021-01-13 15:32:03 -05:00
7caee29b23 added persistence volumes 2021-01-13 15:30:34 -05:00
8a0ccc61a5 backported some stuff from aps to aps-base 2021-01-13 15:22:30 -05:00
237a8abd62 fixed proxy depends_on 2021-01-13 14:33:11 -05:00
f28c16c4fe initial aps base 2021-01-13 14:32:12 -05:00
5 changed files with 35 additions and 199 deletions

10
.env
View File

@@ -5,13 +5,5 @@ PROXY_PROTOCOL=http
PROXY_HOST=localhost PROXY_HOST=localhost
PROXY_PORT=8080 PROXY_PORT=8080
ACS_TAG=7.4.1.1 APS_TAG=2.4.1
ATR_TAG=3.0.0
ATE_AIO_TAG=4.0.0
ASFS_TAG=3.0.0
AAMQ_TAG=latest
POSTGRES_TAG=13 POSTGRES_TAG=13
ASIE_TAG=2.0.8.2
ACS_SHARE_TAG=7.4.1.2
ALF_SYNC_SERV_TAG=3.9.0
ADW_TAG=4.1.0

View File

@@ -3,11 +3,3 @@
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}`. 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

@@ -4,181 +4,52 @@ version: "3"
services: services:
platform: activiti-app:
image: quay.io/alfresco/alfresco-content-repository:${ACS_TAG} image: quay.io/alfresco/alfresco-process-services:${APS_TAG}
environment: environment:
JAVA_TOOL_OPTIONS: " ACTIVITI_DATASOURCE_URL: 'jdbc:postgresql://postgres-aps:5432/activiti?characterEncoding=UTF-8'
-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.secureComms=secret
-Dsolr.sharedSecret=alfresco-secret
-Dshare.host=${PROXY_HOST}
-Dshare.port=${PROXY_PORT}
-Dshare.protocol=${PROXY_PROTOCOL}
-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
-Dcsrf.filter.enabled=false
-Dcors.enabled=false
-Dtransform.service.enabled=true
-Dtransform.service.url=http://transform-router:8095
-Dsfs.url=http://shared-file-store:8099
-Dlocal.transform.service.enabled=true
-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
"
depends_on: depends_on:
- postgres-acs - postgres-aps
- activemq
- shared-file-store
volumes: volumes:
- "$ALFRESCO_LICENSE_DIR/acs:/usr/local/tomcat/shared/classes/alfresco/extension/license:ro" - "$ALFRESCO_LICENSE_DIR/aps:/root/.activiti/enterprise-license:ro"
- acsbin-volume:/usr/local/tomcat/alf_data:rw - apsbin-volume:/var/lib/postgresql/data:rw
transform-router: activiti-admin:
image: quay.io/alfresco/alfresco-transform-router:${ATR_TAG} image: quay.io/alfresco/alfresco-process-services-admin:${APS_TAG}
environment: environment:
ACTIVEMQ_URL: "nio://activemq:61616" ACTIVITI_ADMIN_DATASOURCE_URL: 'jdbc:postgresql://postgres-aps-admin:5432/activiti-admin?characterEncoding=UTF-8'
CORE_AIO_URL : "http://transform-core-aio:8090" ACTIVITI_ADMIN_REST_APP_HOST: http://activiti-app
FILE_STORE_URL: "http://shared-file-store:8099/alfresco/api/-default-/private/sfs/versions/1/file"
depends_on: depends_on:
- activemq - postgres-aps-admin
- shared-file-store - activiti-app
transform-core-aio: postgres-aps:
image: alfresco/alfresco-transform-core-aio:${ATE_AIO_TAG}
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: quay.io/alfresco/alfresco-shared-file-store:${ASFS_TAG}
volumes:
- shared-file-store-volume:/tmp/Alfresco/sfs
share:
image: alfresco/alfresco-share:${ACS_SHARE_TAG}
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:${POSTGRES_TAG} image: postgres:${POSTGRES_TAG}
environment: environment:
POSTGRES_PASSWORD: alfresco POSTGRES_DB: activiti
POSTGRES_USER: alfresco
POSTGRES_DB: alfresco
command: postgres -c max_connections=300 -c log_min_messages=LOG
volumes: volumes:
- acsdb-volume:/var/lib/postgresql/data:rw - apsdb-volume:/var/lib/postgresql/data:rw
search: postgres-aps-admin:
image: alfresco/alfresco-search-services:${ASIE_TAG} image: postgres:${POSTGRES_TAG}
environment: environment:
SOLR_ALFRESCO_HOST: platform POSTGRES_DB: activiti-admin
SOLR_SOLR_HOST: search
SOLR_CREATE_ALFRESCO_DEFAULTS: alfresco,archive
ALFRESCO_SECURE_COMMS: secret
JAVA_TOOL_OPTIONS: "
-Dalfresco.secureComms.secret=alfresco-secret
"
healthcheck:
test: "curl -fsS http://localhost:8983/solr"
volumes: volumes:
- solrindex-volume:/opt/alfresco-search-services/data:rw - apsadmindb-volume:/var/lib/postgresql/data:rw
activemq:
image: alfresco/alfresco-activemq:${AAMQ_TAG}
environment:
ACTIVEMQ_OPTS_MEMORY: -Xms64m -Xmx256m
ACTIVEMQ_ADMIN_LOGIN: alfresco
ACTIVEMQ_ADMIN_PASSWORD: alfresco
volumes:
- activemq-volume:/opt/activemq/data:rw
sync:
image: quay.io/alfresco/service-sync:${ALF_SYNC_SERV_TAG}
environment:
JAVA_OPTS : "
-Xms64m -Xmx256m
-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
"
depends_on:
- postgres-acs
- activemq
digital-workspace:
image: quay.io/alfresco/alfresco-digital-workspace:${ADW_TAG}
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"
proxy: proxy:
build: ./nginx-ingress build: ./nginx-ingress
image: local/nginx-ingress:acs-sync-share-adw image: local/nginx-ingress:aps
ports: ports:
- 8080:8080 - 8080:8080
depends_on: depends_on:
- platform - activiti-app
- sync - activiti-admin
- share
- digital-workspace
volumes: volumes:
shared-file-store-volume: apsbin-volume:
driver_opts:
type: tmpfs
device: tmpfs
acsbin-volume:
driver: local driver: local
acsdb-volume: apsdb-volume:
driver: local driver: local
activemq-volume: apsadmindb-volume:
driver: local
solrindex-volume:
driver: local driver: local

View File

@@ -1,19 +1,11 @@
#!/bin/sh #!/bin/sh
if [[ $ACS_PLATFORM_URL ]]; then if [[ $APS_APP_URL ]]; then
sed -i s%http:\/\/platform:8080%"$ACS_PLATFORM_URL"%g /etc/nginx/nginx.conf sed -i s%http:\/\/activiti-app:8080%"$APS_APP_URL"%g /etc/nginx/nginx.conf
fi fi
if [[ $ACS_SYNC_URL ]]; then if [[ $APS_ADMIN_URL ]]; then
sed -i s%http:\/\/sync:9090%"$ACS_SYNC_URL"%g /etc/nginx/nginx.conf sed -i s%http:\/\/activiti-admin:8080%"$APS_ADMIN_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 fi
if [[ $ACCESS_LOG ]]; then if [[ $ACCESS_LOG ]]; then

View File

@@ -39,29 +39,18 @@ http {
location ~ ^(/.*/s/prometheus)$ {return 403;} location ~ ^(/.*/s/prometheus)$ {return 403;}
location / { location / {
proxy_pass http://platform:8080; return 301 $scheme://$http_host/activiti-app;
} }
location /alfresco/ { location /activiti-app/ {
proxy_pass http://platform:8080; proxy_pass http://activiti-app:8080;
# If using external proxy / load balancer (for initial redirect if no trailing slash) # If using external proxy / load balancer (for initial redirect if no trailing slash)
absolute_redirect off; absolute_redirect off;
} }
location /sync/ {
proxy_pass http://sync:9090/alfresco/;
}
location /share/ { location /activiti-admin/ {
proxy_pass http://share:8080; proxy_pass http://activiti-admin: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) # If using external proxy / load balancer (for initial redirect if no trailing slash)
absolute_redirect off; absolute_redirect off;