Compare commits

..

41 Commits

Author SHA1 Message Date
brian
b6f2befafb Merge branch 'acs-ats-enterprise' into acs-backend-enterprise 2021-04-02 09:13:57 -04:00
brian
c11990900c Merge branch 'acs-sync-base' into acs-backend-enterprise 2021-04-02 09:13:56 -04:00
brian
e07cea5ffa Merge branch 'acs-search' into acs-backend-enterprise 2021-04-02 09:13:54 -04:00
brian
29f4ca7c54 Merge branch 'acs-ats-base' into acs-ats-enterprise 2021-04-02 09:13:50 -04:00
brian
73fea3d13d Merge branch 'acs-enterprise' into acs-ats-enterprise 2021-04-02 09:13:49 -04:00
brian
910cc2e2cb Merge branch 'acs' into acs-enterprise 2021-04-02 09:13:44 -04:00
brian
f10722dec9 Merge branch 'acs-base' into acs-sync-base 2021-04-02 09:13:22 -04:00
39928d09fc Merge branch 'ats-base' into acs-ats-base 2021-04-02 09:11:32 -04:00
9859e68fe8 Merge branch 'acs-base' into acs-ats-base 2021-04-02 09:11:22 -04:00
4dccd7892f Merge branch 'base' into ats-base 2021-04-02 09:09:13 -04:00
3b5fc8c096 fixed sync service config 2021-01-13 17:35:43 -05:00
ac7e691100 Merge branch 'acs-sync-base' into acs-backend-enterprise 2021-01-13 11:09:18 -05:00
15ccb5642b using proxy values for sync url 2021-01-13 09:59:21 -05:00
4349851dd9 Merge remote-tracking branch 'origin/acs-sync-base' into acs-backend-enterprise 2021-01-13 09:56:54 -05:00
9b3ba22ca1 Merge branch 'acs-search.acs' into acs-backend-enterprise.acs-search 2021-01-06 16:33:19 -05:00
76dc8c7ad9 Merge branch 'acs-ats-base.acs-base' into acs-ats-enterprise.acs-ats-base 2021-01-06 16:22:31 -05:00
b024fd8d7e Merge branch 'ats-base.base' into acs-ats-base.ats-base 2021-01-06 16:21:36 -05:00
8a36f91d06 Merge branch 'acs-base.proxy' into acs-ats-base.acs-base 2021-01-06 16:15:41 -05:00
a56556b596 Merge branch 'acs-base.proxy' into acs-sync-base.acs-base 2021-01-06 15:54:27 -05:00
d3b41dcc46 Merge branch 'base' into ats-base.base 2021-01-06 15:53:29 -05:00
37de03317b Merge branch 'acs-enterprise.acs-community' into acs-ats-enterprise.acs-enterprise 2021-01-06 15:40:03 -05:00
dc9fb0abfa added license dir 2021-01-06 15:39:29 -05:00
68dc071342 configured ACS for ATS 2021-01-06 15:36:32 -05:00
78ec9c2a94 Merge branch 'ats-base.base' into acs-ats-enterprise.ats-base 2021-01-06 15:25:16 -05:00
cafee75cdc set platform to v6.2.2.3 2021-01-06 15:21:05 -05:00
b47583a716 Merge branch 'acs-base.proxy' into acs-ats-base.acs-base 2020-12-26 14:15:39 -05:00
b1f3b14846 Merge branch 'acs-base.proxy' into acs-sync-base.acs-base 2020-12-25 23:37:08 -05:00
04f44ef280 Merge branch 'acs-base.proxy' into acs-ats-base.acs-base 2020-12-25 23:32:53 -05:00
ce9b143fb5 added ATS-only base config 2020-12-21 11:50:38 -05:00
0b507962fa added sync service config 2020-12-17 17:41:47 -05:00
f73fdbb5ea added volume to base shared file store config 2020-12-17 17:16:01 -05:00
3b631bcd87 Merge branch 'acs-base.proxy' into acs-ats-base.acs-base 2020-12-17 16:29:45 -05:00
d6f1c99c79 Merge branch 'acs-base.proxy' into acs-ats-base.acs-base 2020-12-17 16:25:37 -05:00
6d35ffa551 Merge branch 'acs-base.acs-proxy' into acs-ats-base.acs-base 2020-12-17 16:21:14 -05:00
6c739c5795 Merge branch 'acs-base.acs-proxy' into acs-ats-base.acs-base 2020-12-17 16:18:18 -05:00
487a677f6f added service referencing variables 2020-12-17 12:48:48 -05:00
0608045c1b Merge branch 'acs-base.base' into acs-ats-base.acs-base 2020-12-17 12:46:35 -05:00
79ef1f5868 added depends_on for ATS 2020-12-17 12:37:10 -05:00
8c480402ed Merge branch 'acs-base.base' into acs-ats-base.acs-base 2020-12-17 12:32:07 -05:00
6858d201c2 Merge branch 'acs-base.base' into acs-ats-base.acs-base 2020-12-16 23:56:08 -05:00
c1323a8171 added ATS minimum unconfigured services 2020-12-16 23:38:34 -05:00
6 changed files with 95 additions and 204 deletions

12
.env
View File

@@ -4,15 +4,3 @@ ALFRESCO_LICENSE_DIR=~/alfresco/license
PROXY_PROTOCOL=http
PROXY_HOST=localhost
PROXY_PORT=8080
IDENTITY_SERVICE_PROTOCOL=http
IDENTITY_SERVICE_HOST=auth.example.org
IDENTITY_SERVICE_PORT=8080
ACS_TAG=7.4.1.1
ATE_AIO_TAG=4.0.0
AAMQ_TAG=latest
POSTGRES_TAG=13
ASIE_TAG=2.0.8.2
APS_TAG=2.4.1
AIS_TAG=1.8.0.1
ACS_SHARE_TAG=7.4.1.2

View File

@@ -3,10 +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}`.
## Licensing
This version of Alfresco requires licensing.
### APS
APS requires a license file for it to work. 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/aps`. The filename must be `activiti.lic`. You can use symbolic linking if desired.

View File

@@ -1,147 +1,133 @@
# Originally sourced from https://github.com/Alfresco/acs-deployment/blob/4.0.3/docker-compose/docker-compose.yml
# Sourced from https://github.com/Alfresco/acs-deployment/blob/4.0.3/docker-compose/docker-compose.yml
#
version: "3"
# Using version 2 as 3 does not support resource constraint options (cpu_*, mem_* limits) for non swarm mode in Compose
version: "2"
services:
platform:
image: alfresco/alfresco-content-repository-community:${ACS_TAG}
image: alfresco/alfresco-content-repository:6.2.2.3
mem_limit: 1700m
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.secureComms=secret
-Dsolr.sharedSecret=alfresco-secret
-Dsolr.port=8983
-Dsolr.secureComms=none
-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
-Dcors.enabled=false
-Dtransform.service.enabled=false
-Dlocal.transform.service.enabled=true
-Dauthentication.chain=aims:identity-service,builtin:alfrescoNtlm
-Didentity-service.authentication.defaultAdministratorUserNames=admin.1
-Didentity-service.auth-server-url=${IDENTITY_SERVICE_PROTOCOL}://${IDENTITY_SERVICE_HOST}:${IDENTITY_SERVICE_PORT}/auth
-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
-Dsystem.content.eagerOrphanCleanup=true
-Dsystem.content.orphanProtectDays=0
-Djodconverter.enabled=false
"
depends_on:
postgres-acs:
condition: service_started
activemq:
condition: service_started
identity:
condition: service_healthy
- 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:${ATE_AIO_TAG}
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
postgres-acs:
image: postgres:${POSTGRES_TAG}
image: postgres:11.7
mem_limit: 512m
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:${ASIE_TAG}
image: alfresco/alfresco-search-services:2.0.1
mem_limit: 2g
environment:
SOLR_ALFRESCO_HOST: platform
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"
- 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:${AAMQ_TAG}
environment:
ACTIVEMQ_OPTS_MEMORY: -Xms64m -Xmx256m
ACTIVEMQ_ADMIN_LOGIN: alfresco
ACTIVEMQ_ADMIN_PASSWORD: alfresco
image: alfresco/alfresco-activemq:5.15.8
mem_limit: 256m
activiti-app:
image: quay.io/alfresco/alfresco-process-services:${APS_TAG}
sync:
image: quay.io/alfresco/service-sync:3.3.3.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'
IDENTITY_SERVICE_ENABLED: "true"
IDENTITY_SERVICE_AUTH: ${IDENTITY_SERVICE_PROTOCOL}://${IDENTITY_SERVICE_HOST}:${IDENTITY_SERVICE_PORT}/auth
IDENTITY_SERVICE_CONTENT_SSO_REDIRECT_URI: ${PROXY_PROTOCOL}://${PROXY_HOST}:${PROXY_PORT}/activiti-app/app/rest/integration/sso/confirm-auth-request
JAVA_OPTS: "-Xms128m -Xmx256m"
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-aps
volumes:
- "$ALFRESCO_LICENSE_DIR/aps:/home/alfresco/.activiti/enterprise-license:ro"
postgres-aps:
image: postgres:${POSTGRES_TAG}
environment:
POSTGRES_DB: activiti
POSTGRES_USER: alfresco
POSTGRES_PASSWORD: alfresco
command: postgres -c max_connections=300 -c log_min_messages=LOG
identity:
image: alfresco/alfresco-identity-service:${AIS_TAG}
user: jboss
environment:
KEYCLOAK_USER: admin
KEYCLOAK_PASSWORD: admin
KEYCLOAK_HOSTNAME: ${IDENTITY_SERVICE_HOST}
KEYCLOAK_IMPORT: /tmp/keycloak-alfresco-realm.json
KEYCLOAK_STATISTICS: enabled
networks:
default:
aliases:
- "${IDENTITY_SERVICE_HOST}"
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:8080/auth/realms/alfresco"]
interval: 10s
timeout: 10s
# Really long startup times on Windows
retries: 18
volumes:
- ./keycloak-alfresco-realm.json:/tmp/keycloak-alfresco-realm.json:ro
- postgres-acs
- activemq
proxy:
build: ./nginx-ingress
image: local/nginx-ingress:acs-aps-aims
image: local/nginx-ingress:acs-sync
ports:
- 8080:8080
depends_on:
- platform
- activiti-app
- identity
- sync
volumes:
shared-file-store-volume:
driver_opts:
type: tmpfs
device: tmpfs

View File

@@ -1,62 +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"
}
}
],
"requiredCredentials": [ "password" ],
"users": [
{
"username": "admin",
"email": "admin@app.activiti.com",
"enabled": true,
"credentials" : [
{
"type" : "password",
"value" : "admin"
}
],
"realmRoles": [ "user", "admin" ]
}
]
}

View File

@@ -4,12 +4,8 @@ if [[ $ACS_PLATFORM_URL ]]; then
sed -i s%http:\/\/platform:8080%"$ACS_PLATFORM_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 [[ $AIMS_URL ]]; then
sed -i s%http:\/\/identity:8080%"$AIMS_URL"%g /etc/nginx/nginx.conf
if [[ $ACS_SYNC_URL ]]; then
sed -i s%http:\/\/sync:9090%"$ACS_SYNC_URL"%g /etc/nginx/nginx.conf
fi
if [[ $ACCESS_LOG ]]; then

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;
@@ -47,20 +44,13 @@ http {
location /alfresco/ {
proxy_pass http://platform: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;
# If using external proxy / load balancer (for initial redirect if no trailing slash)
absolute_redirect off;
location /sync/ {
proxy_pass http://sync:9090/alfresco/;
}
}
}