|
| 1 | +# This docker-compose file will spin up an ACS community installation on a local host. |
| 2 | +# It requires at least 6GB of memory available to distribute among containers. |
| 3 | +# |
| 4 | +# For performance tuning, increase each container mem_limit and give a percentage of |
| 5 | +# it to the JVM. Use either the -Xms,-Xmx flags or the newly added flags in |
| 6 | +# java 10+: -XX:MaxRAMPercentage and -XX:MinRAMPercentage. |
| 7 | +# More details here: |
| 8 | +# https://www.oracle.com/technetwork/java/javase/10-relnote-issues-4108729.html |
| 9 | +# |
| 10 | +# Using version 2 as 3 does not support resource constraint options |
| 11 | +# (cpu_*, mem_* limits) for non swarm mode in Compose |
| 12 | +version: "2" |
| 13 | +services: |
| 14 | + alfresco: |
| 15 | + image: filesysorg/alfresco-fileserversng-v23.1:latest |
| 16 | + mem_limit: 1900m |
| 17 | + environment: |
| 18 | + JAVA_TOOL_OPTIONS: >- |
| 19 | + -Dencryption.keystore.type=JCEKS |
| 20 | + -Dencryption.cipherAlgorithm=DESede/CBC/PKCS5Padding |
| 21 | + -Dencryption.keyAlgorithm=DESede |
| 22 | + -Dencryption.keystore.location=/usr/local/tomcat/shared/classes/alfresco/extension/keystore/keystore |
| 23 | + -Dmetadata-keystore.password=mp6yc0UD9e |
| 24 | + -Dmetadata-keystore.aliases=metadata |
| 25 | + -Dmetadata-keystore.metadata.password=oKIWzVdEdA |
| 26 | + -Dmetadata-keystore.metadata.algorithm=DESede |
| 27 | + JAVA_OPTS: >- |
| 28 | + -Ddb.driver=org.postgresql.Driver |
| 29 | + -Ddb.username=alfresco |
| 30 | + -Ddb.password=alfresco |
| 31 | + -Ddb.url=jdbc:postgresql://postgres:5432/alfresco |
| 32 | + -Dsolr.host=solr6 |
| 33 | + -Dsolr.port=8983 |
| 34 | + -Dsolr.http.connection.timeout=1000 |
| 35 | + -Dsolr.secureComms=secret |
| 36 | + -Dsolr.sharedSecret=secret |
| 37 | + -Dsolr.base.url=/solr |
| 38 | + -Dindex.subsystem.name=solr6 |
| 39 | + -Dshare.host=127.0.0.1 |
| 40 | + -Dshare.port=8080 |
| 41 | + -Dalfresco.host=localhost |
| 42 | + -Dalfresco.port=8080 |
| 43 | + -Dcsrf.filter.enabled=false |
| 44 | + -Daos.baseUrlOverwrite=http://localhost:8080/alfresco/aos |
| 45 | + -Dmessaging.broker.url="failover:(nio://activemq:61616)?timeout=3000&jms.useCompression=true" |
| 46 | + -Ddeployment.method=DOCKER_COMPOSE |
| 47 | + -DlocalTransform.core-aio.url=http://transform-core-aio:8090/ |
| 48 | + -XX:MinRAMPercentage=50 |
| 49 | + -XX:MaxRAMPercentage=80 |
| 50 | + FSNG_SMB_DIALECTS: SMB2 |
| 51 | + FSNG_SMB_DISABLE_NTLM: false |
| 52 | + FSNG_SMB_ENABLEPOSTCLOSE: true |
| 53 | + ports: |
| 54 | + - "445:1445" |
| 55 | + - "8000:8000" |
| 56 | + volumes: |
| 57 | + # Map the Alfresco data to a local folder, or use a Docker volume |
| 58 | + - <MAP-TO-LOCAL-FOLDER>/alf_data:/usr/local/tomcat/alf_data |
| 59 | + # Licence file should be in a local folder, or only SMB1 will be enabled |
| 60 | + # Request a fileServersNG trial licence by emailing info@filesys.org |
| 61 | + - <MAP-TO-LOCAL-FOLDER>:/usr/local/tomcat/webapps/alfresco/WEB-INF/classes/alfresco/extension/license |
| 62 | + # If using Kerberos authentication then map a local folder containing the Kerberos keytab and login.conf |
| 63 | + # - <MAP-TO-LOCAL-FOLDER>:/kerberos |
| 64 | + transform-core-aio: |
| 65 | + image: alfresco/alfresco-transform-core-aio:5.0.1 |
| 66 | + mem_limit: 1536m |
| 67 | + environment: |
| 68 | + JAVA_OPTS: >- |
| 69 | + -XX:MinRAMPercentage=50 |
| 70 | + -XX:MaxRAMPercentage=80 |
| 71 | + ports: |
| 72 | + - "8090:8090" |
| 73 | + share: |
| 74 | + image: docker.io/alfresco/alfresco-share:23.1.1 |
| 75 | + mem_limit: 1g |
| 76 | + environment: |
| 77 | + REPO_HOST: "alfresco" |
| 78 | + REPO_PORT: "8080" |
| 79 | + JAVA_OPTS: >- |
| 80 | + -XX:MinRAMPercentage=50 |
| 81 | + -XX:MaxRAMPercentage=80 |
| 82 | + -Dalfresco.host=localhost |
| 83 | + -Dalfresco.port=8080 |
| 84 | + -Dalfresco.context=alfresco |
| 85 | + -Dalfresco.protocol=http |
| 86 | + postgres: |
| 87 | + image: postgres:14.4 |
| 88 | + mem_limit: 512m |
| 89 | + environment: |
| 90 | + - POSTGRES_PASSWORD=alfresco |
| 91 | + - POSTGRES_USER=alfresco |
| 92 | + - POSTGRES_DB=alfresco |
| 93 | + command: postgres -c max_connections=300 -c log_min_messages=LOG |
| 94 | + volumes: |
| 95 | + - /Volumes/SSD/Users/gkspencer/Docker/alf231/postgres:/var/lib/postgresql/data |
| 96 | + ports: |
| 97 | + - "5432:5432" |
| 98 | + solr6: |
| 99 | + image: docker.io/alfresco/alfresco-search-services:2.0.8.2 |
| 100 | + mem_limit: 2g |
| 101 | + environment: |
| 102 | + # Solr needs to know how to register itself with Alfresco |
| 103 | + SOLR_ALFRESCO_HOST: "alfresco" |
| 104 | + SOLR_ALFRESCO_PORT: "8080" |
| 105 | + # Alfresco needs to know how to call solr |
| 106 | + SOLR_SOLR_HOST: "solr6" |
| 107 | + SOLR_SOLR_PORT: "8983" |
| 108 | + # Create the default alfresco and archive cores |
| 109 | + SOLR_CREATE_ALFRESCO_DEFAULTS: "alfresco,archive" |
| 110 | + # HTTPS or SECRET |
| 111 | + ALFRESCO_SECURE_COMMS: "secret" |
| 112 | + # SHARED SECRET VALUE |
| 113 | + JAVA_TOOL_OPTIONS: >- |
| 114 | + -Dalfresco.secureComms.secret=secret |
| 115 | + ports: |
| 116 | + - "8083:8983" # Browser port |
| 117 | + activemq: |
| 118 | + image: alfresco/alfresco-activemq:5.18-jre17-rockylinux8 |
| 119 | + mem_limit: 1g |
| 120 | + ports: |
| 121 | + - "8161:8161" # Web Console |
| 122 | + - "5672:5672" # AMQP |
| 123 | + - "61616:61616" # OpenWire |
| 124 | + - "61613:61613" # STOMP |
| 125 | + content-app: |
| 126 | + image: alfresco/alfresco-content-app:4.3.0 |
| 127 | + mem_limit: 128m |
| 128 | + environment: |
| 129 | + APP_BASE_SHARE_URL: "http://localhost:8080/aca/#/preview/s" |
| 130 | + control-center: |
| 131 | + image: quay.io/alfresco/alfresco-control-center:8.3.0 |
| 132 | + mem_limit: 128m |
| 133 | + environment: |
| 134 | + APP_CONFIG_PROVIDER: "ECM" |
| 135 | + APP_CONFIG_AUTH_TYPE: "BASIC" |
| 136 | + BASE_PATH: ./ |
| 137 | + proxy: |
| 138 | + image: alfresco/alfresco-acs-nginx:3.4.2 |
| 139 | + mem_limit: 128m |
| 140 | + environment: |
| 141 | + DISABLE_PROMETHEUS: "true" |
| 142 | + DISABLE_SYNCSERVICE: "true" |
| 143 | + DISABLE_ADW: "true" |
| 144 | + ENABLE_CONTENT_APP: "true" |
| 145 | + depends_on: |
| 146 | + - alfresco |
| 147 | + - content-app |
| 148 | + - control-center |
| 149 | + ports: |
| 150 | + - "8080:8080" |
| 151 | + links: |
| 152 | + - content-app |
| 153 | + - alfresco |
| 154 | + - share |
| 155 | + - control-center |
0 commit comments