Compare commits

..
Author SHA1 Message Date
brian.long eb8df1a86f fixed aps-search dependency 2023-10-25 18:46:40 -04:00
brian.long 3fee42cd28 elasticsearch v.7.17.13 2023-10-25 18:37:26 -04:00
brian.long 25e6137de9 Revert "removed elasticsearch"
This reverts commit fc8a854920.
2023-10-25 18:34:37 -04:00
brian.long e0e190d987 APS v2.4.1 2023-10-25 18:33:38 -04:00
brian.long fc8a854920 removed elasticsearch 2023-10-25 18:32:39 -04:00
brian.long 7e526e0e1e Merge branch 'proxy' into aps-base 2023-10-25 18:29:28 -04:00
brian.long 241a3e47ea Merge branch 'base' into proxy 2023-10-25 18:07:00 -04:00
brian.long c2a9679ede update comment 2023-10-25 18:05:39 -04:00
brian.long dd967a17f2 parameterized APS versions 2022-11-01 17:06:07 -04:00
brian.long 27a818fd22 Merge branch 'proxy' into aps-base 2022-11-01 17:00:56 -04:00
brian.long 9e1a819e8b Merge branch 'base' into proxy 2022-11-01 14:48:11 -04:00
brian.long 10e7f81163 advancing to docker v3 2022-11-01 14:46:58 -04:00
brian.long 2d91d8bc08 renamed proxy from acs to aps 2021-04-19 08:26:13 -04:00
brian.long 6e0c055222 Merge branch 'proxy' into aps-base 2021-04-02 09:06:48 -04:00
brian.long 3d6aa1d4bc Merge branch 'base' into proxy 2021-04-02 08:41:45 -04:00
brian.long 91ad3afc0a removed external dir 2021-04-02 08:40:18 -04:00
brian.long 20b41bbcb1 corrected misspelling 2021-01-13 15:39:02 -05:00
brian.long a2619fac7b fixed license directory var 2021-01-13 15:37:06 -05:00
brian.long 16aa444b19 removed excess file mapping 2021-01-13 15:32:03 -05:00
brian.long 8a0ccc61a5 backported some stuff from aps to aps-base 2021-01-13 15:22:30 -05:00
brian.long 237a8abd62 fixed proxy depends_on 2021-01-13 14:33:11 -05:00
brian.long f28c16c4fe initial aps base 2021-01-13 14:32:12 -05:00
5 changed files with 48 additions and 313 deletions
+5 -3
View File
@@ -1,8 +1,10 @@
EXTERNAL_RESOURCE_DIR=/home/brian
ALFRESCO_DIR=${EXTERNAL_RESOURCE_DIR}/alfresco
ALFRESCO_DIR=~/alfresco
ALFRESCO_LICENSE_DIR=~/alfresco/license
PROXY_PROTOCOL=http
PROXY_HOST=localhost
PROXY_PORT=8080
IDENTITY_SERVICE_BASEURL=http://auth.example.org:8080
APS_TAG=2.4.1
POSTGRES_TAG=13
ELASTICSEARCH_TAG=7.17.13
+33 -190
View File
@@ -1,210 +1,53 @@
# 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: alfresco/alfresco-content-repository:6.2.2.3
mem_limit: 1700m
activiti-app:
image: quay.io/alfresco/alfresco-process-services:${APS_TAG}
environment:
JAVA_OPTS: "
-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}
-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
-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
-Dauthentication.chain=aims:identity-service,builtin:alfrescoNtlm
-Didentity-service.authentication.defaultAdministratorUserNames=admin.1
-Didentity-service.auth-server-url=${IDENTITY_SERVICE_BASEURL}/auth
-Dsystem.content.eagerOrphanCleanup=true
-Dsystem.content.orphanProtectDays=0
-Djodconverter.enabled=false
"
ACTIVITI_DATASOURCE_URL: 'jdbc:postgresql://postgres-aps:5432/activiti?characterEncoding=UTF-8'
ACTIVITI_ES_REST_CLIENT_ADDRESS: search-aps
depends_on:
- postgres-acs
- activemq
- shared-file-store
- postgres-aps
- search-aps
volumes:
- "$ALFRESCO_LICENSE_DIR/acs:/usr/local/tomcat/shared/classes/alfresco/extension/license:ro"
- "$ALFRESCO_LICENSE_DIR/aps:/root/.activiti/enterprise-license:ro"
transform-router:
image: quay.io/alfresco/alfresco-transform-router:1.3.1
activiti-admin:
image: quay.io/alfresco/alfresco-process-services-admin:${APS_TAG}
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"
ACTIVITI_ADMIN_DATASOURCE_URL: 'jdbc:postgresql://postgres-aps-admin:5432/activiti-admin?characterEncoding=UTF-8'
ACTIVITI_ADMIN_REST_APP_HOST: http://activiti-app
depends_on:
- activemq
- shared-file-store
- postgres-aps-admin
- activiti-app
transform-core-aio:
image: alfresco/alfresco-transform-core-aio:2.3.6
postgres-aps:
image: postgres:${POSTGRES_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: alfresco/alfresco-shared-file-store:0.10.0
volumes:
- shared-file-store-volume:/tmp/Alfresco/sfs
POSTGRES_DB: activiti
transform-core-aio:
image: alfresco/alfresco-transform-core-aio:2.3.6
postgres-aps-admin:
image: postgres:${POSTGRES_TAG}
environment:
POSTGRES_DB: activiti-admin
share:
image: alfresco/alfresco-share:6.2.2
mem_limit: 512m
search-aps:
image: elasticsearch:${ELASTICSEARCH_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}
-Daims.enabled=true
-Daims.realm=alfresco
-Daims.resource=acs-share
-Daims.authServerUrl=${IDENTITY_SERVICE_BASEURL}/auth
-Daims.sslRequired=none
-Daims.publicClient=true
-Daims.autodetectBearerOnly=true
-Daims.alwaysRefreshToken=true
-Daims.principalAttribute=preferred_username
-Daims.enableBasicAuth=true
"
postgres-acs:
image: postgres:11.7
mem_limit: 512m
environment:
- 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
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
-Didentity-service.auth-server-url=${IDENTITY_SERVICE_BASEURL}/auth
-Didentity-service.resource=acs-sync
"
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"
APP_CONFIG_AUTH_TYPE: OAUTH
APP_CONFIG_OAUTH2_HOST: "${IDENTITY_SERVICE_BASEURL}/auth/realms/alfresco"
APP_CONFIG_OAUTH2_CLIENTID: alfresco
APP_CONFIG_OAUTH2_IMPLICIT_FLOW: "true"
APP_CONFIG_OAUTH2_REDIRECT_LOGIN: "/workspace/"
APP_CONFIG_OAUTH2_REDIRECT_LOGOUT: "/workspace/logout"
identity:
image: alfresco/alfresco-identity-service:1.3
user: jboss
environment:
KEYCLOAK_USER: admin
KEYCLOAK_PASSWORD: admin
KEYCLOAK_HOSTNAME: auth.example.org
KEYCLOAK_IMPORT: /tmp/keycloak-alfresco-realm.json
KEYCLOAK_STATISTICS: enabled
networks:
default:
aliases:
- "auth.example.org"
volumes:
- ./keycloak-alfresco-realm.json:/tmp/keycloak-alfresco-realm.json:ro
discovery.type: single-node
ulimits:
memlock:
soft: -1
hard: -1
proxy:
build: ./nginx-ingress
image: local/nginx-ingress:acs-sync-share-adw-aims
image: local/nginx-ingress:aps
ports:
- 8080:8080
depends_on:
- platform
- sync
- share
- digital-workspace
- identity
volumes:
shared-file-store-volume:
driver_opts:
type: tmpfs
device: tmpfs
- activiti-app
- activiti-admin
-80
View File
@@ -1,80 +0,0 @@
{
"realm": "alfresco",
"enabled": true,
"sslRequired": "external",
"registrationAllowed": false,
"roles": {
"realm": [ {
"name": "user",
"description": "User privileges"
}, {
"name": "admin",
"description": "Administrator privileges"
} ]
},
"clients": [
{
"clientId": "alfresco",
"name": "Alfresco Products",
"enabled": true,
"alwaysDisplayInConsole": false,
"redirectUris": [ "*" ],
"standardFlowEnabled": true,
"implicitFlowEnabled": true,
"directAccessGrantsEnabled": false,
"publicClient": true,
"protocol": "openid-connect",
"attributes": {
"login_theme": "alfresco"
}
},
{
"clientId": "acs-share",
"name": "ACS Share",
"enabled": true,
"alwaysDisplayInConsole": false,
"redirectUris": [ "*" ],
"standardFlowEnabled": true,
"implicitFlowEnabled": false,
"directAccessGrantsEnabled": false,
"publicClient": true,
"protocol": "openid-connect",
"attributes": {
"login_theme": "alfresco"
}
},
{
"clientId": "acs-sync",
"name": "Alfresco Sync Service Clients",
"enabled": true,
"alwaysDisplayInConsole": false,
"redirectUris": [
"http://127.0.0.1*",
"http://localhost*"
],
"standardFlowEnabled": true,
"implicitFlowEnabled": false,
"directAccessGrantsEnabled": false,
"publicClient": true,
"protocol": "openid-connect",
"attributes": {
"login_theme": "alfresco"
}
}
],
"requiredCredentials": [ "password" ],
"users": [
{
"username": "admin",
"email": "admin@app.activiti.com",
"enabled": true,
"credentials" : [
{
"type" : "password",
"value" : "admin"
}
],
"realmRoles": [ "user", "admin" ]
}
]
}
+4 -16
View File
@@ -1,23 +1,11 @@
#!/bin/sh
if [[ $ACS_PLATFORM_URL ]]; then
sed -i s%http:\/\/platform:8080%"$ACS_PLATFORM_URL"%g /etc/nginx/nginx.conf
if [[ $APS_APP_URL ]]; then
sed -i s%http:\/\/activiti-app:8080%"$APS_APP_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 [[ $AIMS_URL ]]; then
sed -i s%http:\/\/identity:8080%"$AIMS_URL"%g /etc/nginx/nginx.conf
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
+6 -24
View File
@@ -19,10 +19,7 @@ http {
proxy_next_upstream error timeout invalid_header http_500 http_502 http_503 http_504;
proxy_redirect off;
# proxy_buffering off;
proxy_buffer_size 64k;
proxy_buffers 4 256k;
proxy_busy_buffers_size 256k;
proxy_buffering off;
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
@@ -42,33 +39,18 @@ http {
location ~ ^(/.*/s/prometheus)$ {return 403;}
location / {
proxy_pass http://platform:8080;
return 301 $scheme://$http_host/activiti-app;
}
location /alfresco/ {
proxy_pass http://platform:8080;
# 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 /share/ {
proxy_pass http://share:8080;
}
location /workspace/ {
proxy_pass http://digital-workspace:8080/;
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 /auth/ {
proxy_pass http://identity:8080;
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;