Compare commits

..

10 Commits

8 changed files with 39 additions and 182 deletions

View File

@@ -0,0 +1,16 @@
FROM alfresco/alfresco-content-repository:latest
ARG USERNAME=alfresco
ARG TOMCAT_DIR=/usr/local/tomcat
USER root
COPY catalina.policy /tmp/catalina.policy.ext
COPY tomcat-platform-context.xml ${TOMCAT_DIR}/conf/Catalina/localhost/alfresco.xml
COPY *.amp ${TOMCAT_DIR}/amps/
RUN java -jar ${TOMCAT_DIR}/alfresco-mmt/alfresco-mmt*.jar install ${TOMCAT_DIR}/amps ${TOMCAT_DIR}/webapps/alfresco -nobackup -directory && \
mkdir -p ${TOMCAT_DIR}/modules && \
cat /tmp/catalina.policy.ext >> ${TOMCAT_DIR}/conf/catalina.policy
USER ${USERNAME}

View 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 Platform web application.

View File

@@ -0,0 +1,4 @@
grant codeBase "file:${catalina.base}/modules/-" {
permission java.security.AllPermission;
};

View File

@@ -0,0 +1,7 @@
<?xml version="1.0" encoding="utf-8" ?>
<Context>
<Resources>
<PreResources base="${catalina.base}/modules" className="org.apache.catalina.webresources.DirResourceSet" webAppMount="/WEB-INF/lib" readOnly="true" />
</Resources>
</Context>

View 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 Platform web application.

View File

@@ -5,179 +5,33 @@ version: "2"
services: services:
platform: platform:
image: alfresco/alfresco-content-repository:6.2.2.3 build: ./alfresco-content-repository/docker
mem_limit: 1700m image: local/alfresco-content-repository:latest
environment: environment:
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.port=${PROXY_PORT}
-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=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: depends_on:
- postgres-acs - postgres-acs
- activemq - activemq
- shared-file-store
volumes: volumes:
- "$ALFRESCO_LICENSE_DIR/acs:/usr/local/tomcat/shared/classes/alfresco/extension/license:ro" - "./alfresco-content-repository/modules:/usr/local/tomcat/modules:ro"
- acsbin-volume:/usr/local/tomcat/alf_data:rw
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
share:
image: alfresco/alfresco-share:6.2.2
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: postgres-acs:
image: postgres:11.7 image: postgres:latest
mem_limit: 512m
environment:
- POSTGRES_PASSWORD=alfresco
- POSTGRES_USER=alfresco
- POSTGRES_DB=alfresco
command: postgres -c max_connections=300 -c log_min_messages=LOG
volumes:
- acsdb-volume:/var/lib/postgresql/data:rw
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
volumes:
- solrindex-volume:/opt/alfresco-search-services/data:rw
activemq: activemq:
image: alfresco/alfresco-activemq:5.15.8 image: alfresco/alfresco-activemq:latest
mem_limit: 256m
volumes:
- activemq-volume:/opt/activemq/data:rw
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"
proxy: proxy:
build: ./nginx-ingress build: ./nginx-ingress
image: local/nginx-ingress:acs-sync-share-adw image: local/nginx-ingress:acs
ports: ports:
- 8080:8080 - 8080:8080
depends_on: depends_on:
- platform - platform
- sync
- share
- digital-workspace
volumes:
shared-file-store-volume:
driver_opts:
type: tmpfs
device: tmpfs
acsbin-volume:
driver: local
acsdb-volume:
driver: local
activemq-volume:
driver: local
solrindex-volume:
driver: local

View File

@@ -4,18 +4,6 @@ if [[ $ACS_PLATFORM_URL ]]; then
sed -i s%http:\/\/platform:8080%"$ACS_PLATFORM_URL"%g /etc/nginx/nginx.conf sed -i s%http:\/\/platform:8080%"$ACS_PLATFORM_URL"%g /etc/nginx/nginx.conf
fi 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 [[ $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

View File

@@ -48,23 +48,5 @@ http {
# 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/ {
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;
}
} }
} }