Compare commits
28 Commits
propagate/
...
acs-ext-sh
Author | SHA1 | Date | |
---|---|---|---|
b86dd34b55 | |||
23b3057329 | |||
b009fa9219 | |||
57af0a20b1 | |||
76e4287aa1 | |||
241a3e47ea | |||
c2a9679ede | |||
936e6ad134 | |||
fcd1262721 | |||
d7de714eeb | |||
8e3301877a | |||
8b4e45c2e2 | |||
9e1a819e8b | |||
10e7f81163 | |||
29f254a68e | |||
4ff7371d19 | |||
|
a41c084c9f | ||
f49ea55a48 | |||
e582744e6c | |||
31eaf8c7c2 | |||
14a4c09f4d | |||
486ff23ce4 | |||
bdef8c6b7f | |||
b9f0597020 | |||
18839c8019 | |||
8a29bded24 | |||
cb04027103 | |||
893f9cf7a8 |
6
.env
6
.env
@@ -4,4 +4,8 @@ ALFRESCO_LICENSE_DIR=~/alfresco/license
|
|||||||
PROXY_PROTOCOL=http
|
PROXY_PROTOCOL=http
|
||||||
PROXY_HOST=localhost
|
PROXY_HOST=localhost
|
||||||
PROXY_PORT=8080
|
PROXY_PORT=8080
|
||||||
IDENTITY_SERVICE_BASEURL=http://auth.example.org:8080
|
|
||||||
|
ACS_TAG=7.4.1.1
|
||||||
|
AAMQ_TAG=latest
|
||||||
|
POSTGRES_TAG=13
|
||||||
|
ACS_SHARE_TAG=7.4.1.2
|
||||||
|
11
alfresco-share/docker/Dockerfile
Normal file
11
alfresco-share/docker/Dockerfile
Normal file
@@ -0,0 +1,11 @@
|
|||||||
|
ARG ACS_SHARE_TAG=inject-it
|
||||||
|
FROM alfresco/alfresco-share:${ACS_SHARE_TAG}
|
||||||
|
|
||||||
|
ARG TOMCAT_DIR=/usr/local/tomcat
|
||||||
|
|
||||||
|
COPY tomcat-share-context.xml ${TOMCAT_DIR}/conf/Catalina/localhost/share.xml
|
||||||
|
COPY *.amp ${TOMCAT_DIR}/amps_share/
|
||||||
|
|
||||||
|
RUN java -jar ${TOMCAT_DIR}/alfresco-mmt/alfresco-mmt*.jar install ${TOMCAT_DIR}/amps_share ${TOMCAT_DIR}/webapps/share -nobackup -directory && \
|
||||||
|
mkdir -p ${TOMCAT_DIR}/modules/share
|
||||||
|
|
3
alfresco-share/docker/README.md
Normal file
3
alfresco-share/docker/README.md
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
## Usage
|
||||||
|
|
||||||
|
Download all AMP files needed into this directory. All of them will be copied into a new Docker image and installed into the Alfresco Share web application.
|
6
alfresco-share/docker/tomcat-share-context.xml
Normal file
6
alfresco-share/docker/tomcat-share-context.xml
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8" ?>
|
||||||
|
<Context>
|
||||||
|
<Resources>
|
||||||
|
<PreResources base="${catalina.base}/modules/share" className="org.apache.catalina.webresources.DirResourceSet" webAppMount="/WEB-INF/lib" readOnly="true" />
|
||||||
|
</Resources>
|
||||||
|
</Context>
|
3
alfresco-share/modules/README.md
Normal file
3
alfresco-share/modules/README.md
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
## Usage
|
||||||
|
|
||||||
|
Download all JAR module files needed into this directory. All of them will be dynamically loaded into the Docker container and loaded into the Alfresco Share web application.
|
@@ -1,60 +1,42 @@
|
|||||||
# 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: "3"
|
||||||
version: "2"
|
|
||||||
|
|
||||||
services:
|
services:
|
||||||
|
|
||||||
platform:
|
platform:
|
||||||
image: alfresco/alfresco-content-repository-community:6.2.0-ga
|
image: alfresco/alfresco-content-repository-community:${ACS_TAG}
|
||||||
mem_limit: 1700m
|
|
||||||
environment:
|
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: "
|
JAVA_OPTS: "
|
||||||
-Ddb.driver=org.postgresql.Driver
|
-Ddb.driver=org.postgresql.Driver
|
||||||
-Ddb.username=alfresco
|
|
||||||
-Ddb.password=alfresco
|
|
||||||
-Ddb.url=jdbc:postgresql://postgres-acs:5432/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.host=${PROXY_HOST}
|
||||||
-Dshare.port=${PROXY_PORT}
|
-Dshare.port=${PROXY_PORT}
|
||||||
-Dshare.protocol=${PROXY_PROTOCOL}
|
-Dshare.protocol=${PROXY_PROTOCOL}
|
||||||
-Dalfresco.host=${PROXY_HOST}
|
-Dalfresco.host=${PROXY_HOST}
|
||||||
-Dalfresco.port=${PROXY_PORT}
|
-Dalfresco.port=${PROXY_PORT}
|
||||||
-Dalfresco.protocol=${PROXY_PROTOCOL}
|
-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\"
|
-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=false
|
|
||||||
|
|
||||||
-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
|
|
||||||
"
|
"
|
||||||
depends_on:
|
depends_on:
|
||||||
- postgres-acs
|
- postgres-acs
|
||||||
- activemq
|
- activemq
|
||||||
|
|
||||||
transform-core-aio:
|
|
||||||
image: alfresco/alfresco-transform-core-aio:2.3.6
|
|
||||||
|
|
||||||
share:
|
share:
|
||||||
image: alfresco/alfresco-share:6.2.2
|
build:
|
||||||
mem_limit: 512m
|
context: ./alfresco-share/docker
|
||||||
|
args:
|
||||||
|
ACS_SHARE_TAG: ${ACS_SHARE_TAG}
|
||||||
|
image: local/alfresco-share:latest
|
||||||
environment:
|
environment:
|
||||||
REPO_HOST: "platform"
|
REPO_HOST: "platform"
|
||||||
CSRF_FILTER_REFERER: "${PROXY_PROTOCOL}://${PROXY_HOST}(:${PROXY_PORT})?/?.*"
|
CSRF_FILTER_REFERER: "${PROXY_PROTOCOL}://${PROXY_HOST}(:${PROXY_PORT})?/?.*"
|
||||||
@@ -66,64 +48,21 @@ services:
|
|||||||
-Dalfresco.host=${PROXY_HOST}
|
-Dalfresco.host=${PROXY_HOST}
|
||||||
-Dalfresco.port=${PROXY_PORT}
|
-Dalfresco.port=${PROXY_PORT}
|
||||||
-Dalfresco.protocol=${PROXY_PROTOCOL}
|
-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
|
|
||||||
"
|
"
|
||||||
|
volumes:
|
||||||
|
- "./alfresco-share/modules:/usr/local/tomcat/modules/share:ro"
|
||||||
|
|
||||||
postgres-acs:
|
postgres-acs:
|
||||||
image: postgres:11.7
|
image: postgres:${POSTGRES_TAG}
|
||||||
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:
|
activemq:
|
||||||
image: alfresco/alfresco-activemq:5.15.8
|
image: alfresco/alfresco-activemq:${AAMQ_TAG}
|
||||||
mem_limit: 256m
|
|
||||||
|
|
||||||
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
|
|
||||||
|
|
||||||
proxy:
|
proxy:
|
||||||
build: ./nginx-ingress
|
build: ./nginx-ingress
|
||||||
image: local/nginx-ingress:acs-share-aims
|
image: local/nginx-ingress:acs-share
|
||||||
ports:
|
ports:
|
||||||
- 8080:8080
|
- 8080:8080
|
||||||
depends_on:
|
depends_on:
|
||||||
- platform
|
- platform
|
||||||
- share
|
- share
|
||||||
- identity
|
|
||||||
|
@@ -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" ]
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
@@ -8,10 +8,6 @@ if [[ $ACS_SHARE_URL ]]; then
|
|||||||
sed -i s%http:\/\/share:8080%"$ACS_SHARE_URL"%g /etc/nginx/nginx.conf
|
sed -i s%http:\/\/share:8080%"$ACS_SHARE_URL"%g /etc/nginx/nginx.conf
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [[ $AIMS_URL ]]; then
|
|
||||||
sed -i s%http:\/\/identity:8080%"$AIMS_URL"%g /etc/nginx/nginx.conf
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [[ $ACCESS_LOG ]]; then
|
if [[ $ACCESS_LOG ]]; then
|
||||||
sed -i s%\#ENV_ACCESS_LOG%"access_log $ACCESS_LOG;"%g /etc/nginx/nginx.conf
|
sed -i s%\#ENV_ACCESS_LOG%"access_log $ACCESS_LOG;"%g /etc/nginx/nginx.conf
|
||||||
fi
|
fi
|
||||||
|
@@ -19,10 +19,7 @@ http {
|
|||||||
|
|
||||||
proxy_next_upstream error timeout invalid_header http_500 http_502 http_503 http_504;
|
proxy_next_upstream error timeout invalid_header http_500 http_502 http_503 http_504;
|
||||||
proxy_redirect off;
|
proxy_redirect off;
|
||||||
# proxy_buffering off;
|
proxy_buffering off;
|
||||||
proxy_buffer_size 64k;
|
|
||||||
proxy_buffers 4 256k;
|
|
||||||
proxy_busy_buffers_size 256k;
|
|
||||||
proxy_set_header Host $http_host;
|
proxy_set_header Host $http_host;
|
||||||
proxy_set_header X-Real-IP $remote_addr;
|
proxy_set_header X-Real-IP $remote_addr;
|
||||||
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||||
@@ -54,10 +51,6 @@ http {
|
|||||||
|
|
||||||
location /share/ {
|
location /share/ {
|
||||||
proxy_pass http://share:8080;
|
proxy_pass http://share:8080;
|
||||||
}
|
|
||||||
|
|
||||||
location /auth/ {
|
|
||||||
proxy_pass http://identity: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;
|
||||||
|
Reference in New Issue
Block a user