alfresco community edition 7.0 integration with LDAP-AD using docker

cancel
Showing results for 
Search instead for 
Did you mean: 
waqar
Member II

alfresco community edition 7.0 integration with LDAP-AD using docker

I am facing an error  please anyone who can help me.i want to integrate alfresco community edition  with LDAP-AD.i am using docker.i have mentioned ldap configuration details in docker.compose.yml file 

 

services:

alfresco:
image: alfresco/alfresco-content-repository-community:7.0.0
mem_limit: 1500m

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: "
-Ddb.driver=org.postgresql.Driver
-Ddb.username=alfresco
-Ddb.password=alfresco
-Ddb.url=jdbcSmiley Tongueostgresql://postgres:5432/alfresco
-Dsolr.host=solr6
-Dsolr.port=8983
-Dsolr.http.connection.timeout=1000
-Dsolr.secureComms=none
-Dsolr.base.url=/solr
-Dindex.subsystem.name=solr6
-Dshare.host=127.0.0.1
-Dshare.port=8080
-Dalfresco.host=localhost
-Dalfresco.port=8080
-Daos.baseUrlOverwrite=http://localhost:8080/alfresco/aos
-Dmessaging.broker.url=\"failoverSmiley Sadnio://activemq:61616)?timeout=3000&jms.useCompression=true\"
-Ddeployment.method=DOCKER_COMPOSE
-DlocalTransform.core-aio.url=http://transform-core-aio:8090/
-Dcsrf.filter.enabled=false
-XX:MinRAMPercentage=50 -XX:MaxRAMPercentage=80
-Dauthentication.chain=alfinst:alfrescoNtlm,ldap-ad1:ldap-ad
-Dldap.authentication.allowGuestLogin=false
-Dldap.authentication.userNameFormat=%s@nust.edu.pk
-Dldap.authentication.java.naming.provider.url=ldap://1.2.3.4:389
-Dldap.authentication.defaultAdministratorUserNames=Administrator,alfresco
-Dldap.synchronization.java.naming.security.principal=demo.ict
-Dldap.synchronization.java.naming.security.credentials=demo
-Dldap.synchronization.groupSearchBase=DC=mydomain,DC=local
-Dldap.synchronization.userSearchBase=DC=mydomain,DC=local
"
transform-core-aio:
image: alfresco/alfresco-transform-core-aio:2.3.10
mem_limit: 1536m
environment:
JAVA_OPTS: " -XX:MinRAMPercentage=50 -XX:MaxRAMPercentage=80"
ports:
- 8090:8090

share:
image: alfresco/alfresco-share:7.0.0
mem_limit: 1g
environment:
REPO_HOST: "alfresco"
REPO_PORT: "8080"
JAVA_OPTS: "
-XX:MinRAMPercentage=50
-XX:MaxRAMPercentage=80
-Dalfresco.host=localhost
-Dalfresco.port=8080
-Dalfresco.context=alfresco
-Dalfresco.protocol=http
"

postgres:
image: postgres:13.1
mem_limit: 512m
environment:
- POSTGRES_PASSWORD=alfresco
- POSTGRES_USER=alfresco
- POSTGRES_DB=alfresco
command: postgres -c max_connections=300 -c log_min_messages=LOG
ports:
- 5432:5432

solr6:
image: alfresco/alfresco-search-services:2.0.1
mem_limit: 2g
environment:
#Solr needs to know how to register itself with Alfresco
- SOLR_ALFRESCO_HOST=alfresco
- SOLR_ALFRESCO_PORT=8080
#Alfresco needs to know how to call solr
- SOLR_SOLR_HOST=solr6
- SOLR_SOLR_PORT=8983
#Create the default alfresco and archive cores
- SOLR_CREATE_ALFRESCO_DEFAULTS=alfresco,archive
#HTTP by default
- ALFRESCO_SECURE_COMMS=none
ports:
- 8083:8983 #Browser port
activemq:
image: alfresco/alfresco-activemq:5.16.1
mem_limit: 1g
ports:
- 8161:8161 # Web Console
- 5672:5672 # AMQP
- 61616:61616 # OpenWire
- 61613:61613 # STOMP

proxy:
image: alfresco/alfresco-acs-nginx:3.1.1
mem_limit: 128m
environment:
DISABLE_PROMETHEUS: "true"
DISABLE_SYNCSERVICE: "true"
DISABLE_ADW: "true"
depends_on:
- alfresco
ports:
- 8080:8080
links:
- alfresco
- share

 

Error details

alfresco_1 | 2021-07-08 09:55:11,548 INFO [management.subsystems.ChildApplicationContextFactory] [main] Starting 'Authentication' subsystem, ID: [Authentication, managed, ldap-ad1]
alfresco_1 | 2021-07-08 09:55:12,086 WARN [authentication.ldap.LDAPInitialDirContextFactoryImpl] [main] LDAP server supports anonymous bind ldap://10.250.64.73:389
alfresco_1 | 2021-07-08 09:55:12,259 INFO [management.subsystems.ChildApplicationContextFactory] [main] Startup of 'Authentication' subsystem, ID: [Authentication, managed, ldap-ad1] complete
alfresco_1 | 2021-07-08 09:55:16,185 INFO [extensions.webscripts.TemplateProcessorRegistry] [main] Registered template processor Repository Template Processor for extension ftl
alfresco_1 | 2021-07-08 09:55:16,190 INFO [extensions.webscripts.ScriptProcessorRegistry] [main] Registered script processor Repository Script Processor for extension js
alfresco_1 | 2021-07-08 09:55:18,493 INFO [management.subsystems.ChildApplicationContextFactory] [main] Starting 'ContentStore' subsystem, ID: [ContentStore, managed, unencrypted]
alfresco_1 | 2021-07-08 09:55:18,573 INFO [management.subsystems.ChildApplicationContextFactory] [main] Startup of 'ContentStore' subsystem, ID: [ContentStore, managed, unencrypted] complete
alfresco_1 | 2021-07-08 09:55:18,659 INFO [domain.schema.SchemaBootstrap] [main] Connecting to database: jdbcSmiley Tongueostgresql://postgres:5432/alfresco, UserName=alfresco, PostgreSQL JDBC Driver
alfresco_1 | 2021-07-08 09:55:18,660 INFO [domain.schema.SchemaBootstrap] [main] Schema managed by database dialect org.alfresco.repo.domain.dialect.PostgreSQLDialect.
alfresco_1 | 2021-07-08 09:55:18,825 INFO [domain.schema.SchemaBootstrap] [main] Applied patches detected: 223
alfresco_1 | 2021-07-08 09:55:18,952 INFO [domain.schema.SchemaBootstrap] [main] Checking and patching Alfresco tables took 126 ms
alfresco_1 | 2021-07-08 09:55:18,992 INFO [domain.schema.SchemaBootstrap] [main] Activiti tables need to be checked for patches
alfresco_1 | 2021-07-08 09:55:19,058 INFO [domain.schema.SchemaBootstrap] [main] Checking and patching Activiti tables took 65 ms
alfresco_1 | 2021-07-08 09:55:19,127 INFO [domain.schema.SchemaBootstrap] [main] Checking that all patches have been applied took 63 ms
alfresco_1 | 2021-07-08 09:55:19,127 INFO [domain.schema.SchemaBootstrap] [main] Updating the DB schema took 463 ms
alfresco_1 | 2021-07-08 09:55:19,130 INFO [domain.schema.SchemaBootstrap] [main] No changes were made to the schema.
alfresco_1 | 2021-07-08 09:55:20,666 WARN [repo.admin.ConfigurationChecker] [main] The 'dir.root' property is set to a relative path './alf_data'. 'dir.root' should be overridden to point to a specific folder.
alfresco_1 | 2021-07-08 09:55:20,667 INFO [repo.admin.ConfigurationChecker] [main] The root data directory ('dir.root') is: ./alf_data
alfresco_1 | 2021-07-08 09:55:20,695 ERROR [repo.admin.ConfigurationChecker] [main] CONTENT INTEGRITY ERROR: System content not found in content store: 'store://2021/6/24/5/56/d369cd7f-4b22-490c-8545-3d3cb2248057.bin'
alfresco_1 | 2021-07-08 09:55:20,695 ERROR [repo.admin.ConfigurationChecker] [main] Ensure that the 'dir.root' property './alf_data' is pointing to the correct data location.
alfresco_1 | 2021-07-08 09:55:20,706 ERROR [web.context.ContextLoader] [main] Context initialization failed
alfresco_1 | org.alfresco.error.AlfrescoRuntimeException: 06080018 Ensure that the 'dir.root' property './alf_data' is pointing to the correct data location.
alfresco_1 | at org.alfresco.repo.admin.ConfigurationChecker.check(ConfigurationChecker.java:212)
alfresco_1 | at org.alfresco.repo.admin.ConfigurationChecker.access$0(ConfigurationChecker.java:167)
alfresco_1 | at org.alfresco.repo.admin.ConfigurationChecker$1$1.doWork(ConfigurationChecker.java:155)
alfresco_1 | at org.alfresco.repo.security.authentication.AuthenticationUtil.runAs(AuthenticationUtil.java:602)
alfresco_1 | at org.alfresco.repo.admin.ConfigurationChecker$1.execute(ConfigurationChecker.java:151)
alfresco_1 | at org.alfresco.repo.transaction.RetryingTransactionHelper.doInTransaction(RetryingTransactionHelper.java:450)
alfresco_1 | at org.alfresco.repo.transaction.RetryingTransactionHelper.doInTransaction(RetryingTransactionHelper.java:338)
alfresco_1 | at org.alfresco.repo.admin.ConfigurationChecker.onBootstrap(ConfigurationChecker.java:161)
alfresco_1 | at org.springframework.extensions.surf.util.AbstractLifecycleBean.onApplicationEvent(AbstractLifecycleBean.java:56)
alfresco_1 | at org.alfresco.repo.management.SafeApplicationEventMulticaster.multicastEventInternal(SafeApplicationEventMulticaster.java:221)
alfresco_1 | at org.alfresco.repo.management.SafeApplicationEventMulticaster.multicastEvent(SafeApplicationEventMulticaster.java:186)
alfresco_1 | at org.alfresco.repo.management.SafeApplicationEventMulticaster.multicastEvent(SafeApplicationEventMulticaster.java:206)
alfresco_1 | at org.springframework.context.support.AbstractApplicationContext.publishEvent(AbstractApplicationContext.java:426)
alfresco_1 | at org.springframework.context.support.AbstractApplicationContext.publishEvent(AbstractApplicationContext.java:383)
alfresco_1 | at org.springframework.context.support.AbstractApplicationContext.finishRefresh(AbstractApplicationContext.java:943)
alfresco_1 | at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:591)
alfresco_1 | at org.springframework.web.context.ContextLoader.configureAndRefreshWebApplicationContext(ContextLoader.java:401)
alfresco_1 | at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:292)
alfresco_1 | at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:103)
alfresco_1 | at org.alfresco.web.app.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:70)
alfresco_1 | at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4716)
alfresco_1 | at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5177)
alfresco_1 | at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
alfresco_1 | at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:717)
alfresco_1 | at org.apache.catalina.core.ContainerBase.access$000(ContainerBase.java:129)
alfresco_1 | at org.apache.catalina.core.ContainerBase$PrivilegedAddChild.run(ContainerBase.java:150)
alfresco_1 | at org.apache.catalina.core.ContainerBase$PrivilegedAddChild.run(ContainerBase.java:140)
alfresco_1 | at java.base/java.security.AccessController.doPrivileged(Native Method)
alfresco_1 | at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:688)
alfresco_1 | at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:706)
alfresco_1 | at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:1133)
alfresco_1 | at org.apache.catalina.startup.HostConfig$DeployDirectory.run(HostConfig.java:1866)
alfresco_1 | at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
alfresco_1 | at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
alfresco_1 | at org.apache.tomcat.util.threads.InlineExecutorService.execute(InlineExecutorService.java:75)
alfresco_1 | at java.base/java.util.concurrent.AbstractExecutorService.submit(AbstractExecutorService.java:118)
alfresco_1 | at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:1045)
alfresco_1 | at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:429)
alfresco_1 | at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1576)
alfresco_1 | at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:309)
alfresco_1 | at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:123)
alfresco_1 | at org.apache.catalina.util.LifecycleBase.setStateInternal(LifecycleBase.java:423)
alfresco_1 | at org.apache.catalina.util.LifecycleBase.setState(LifecycleBase.java:366)
alfresco_1 | at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:936)
alfresco_1 | at org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:843)
alfresco_1 | at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
alfresco_1 | at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1384)
alfresco_1 | at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1374)
alfresco_1 | at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
alfresco_1 | at org.apache.tomcat.util.threads.InlineExecutorService.execute(InlineExecutorService.java:75)
alfresco_1 | at java.base/java.util.concurrent.AbstractExecutorService.submit(AbstractExecutorService.java:140)
alfresco_1 | at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:909)
alfresco_1 | at org.apache.catalina.core.StandardEngine.startInternal(StandardEngine.java:262)
alfresco_1 | at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
alfresco_1 | at org.apache.catalina.core.StandardService.startInternal(StandardService.java:434)
alfresco_1 | at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
alfresco_1 | at org.apache.catalina.core.StandardServer.startInternal(StandardServer.java:930)
alfresco_1 | at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
alfresco_1 | at org.apache.catalina.startup.Catalina.start(Catalina.java:772)
alfresco_1 | at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
alfresco_1 | at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
alfresco_1 | at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
alfresco_1 | at java.base/java.lang.reflect.Method.invoke(Method.java:566)
alfresco_1 | at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:342)
alfresco_1 | at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:473)
alfresco_1 | 08-Jul-2021 09:55:20.721 SEVERE [main] org.apache.catalina.core.StandardContext.startInternal One or more listeners failed to start. Full details will be found in the appropriate container log file
alfresco_1 | 08-Jul-2021 09:55:20.724 SEVERE [main] org.apache.catalina.core.StandardContext.startInternal Context [/alfresco] startup failed due to previous errors
alfresco_1 | 2021-07-08 09:55:20,778 WARN [context.support.XmlWebApplicationContext] [main] Exception thrown from ApplicationListener handling ContextClosedEvent
alfresco_1 | java.lang.NullPointerException
alfresco_1 | at org.alfresco.repo.workflow.activiti.ActivitiEngineInitializer.onShutdown(ActivitiEngineInitializer.java:65)
alfresco_1 | at org.springframework.extensions.surf.util.AbstractLifecycleBean.onApplicationEvent(AbstractLifecycleBean.java:67)
alfresco_1 | at org.alfresco.repo.management.SafeApplicationEventMulticaster.multicastEventInternal(SafeApplicationEventMulticaster.java:221)
alfresco_1 | at org.alfresco.repo.management.SafeApplicationEventMulticaster.multicastEvent(SafeApplicationEventMulticaster.java:191)
alfresco_1 | at org.alfresco.repo.management.SafeApplicationEventMulticaster.multicastEvent(SafeApplicationEventMulticaster.java:206)
alfresco_1 | at org.springframework.context.support.AbstractApplicationContext.publishEvent(AbstractApplicationContext.java:426)
alfresco_1 | at org.springframework.context.support.AbstractApplicationContext.publishEvent(AbstractApplicationContext.java:383)
alfresco_1 | at org.springframework.context.support.AbstractApplicationContext.doClose(AbstractApplicationContext.java:1063)
alfresco_1 | at org.springframework.context.support.AbstractApplicationContext.close(AbstractApplicationContext.java:1026)
alfresco_1 | at org.springframework.web.context.ContextLoader.closeWebApplicationContext(ContextLoader.java:517)
alfresco_1 | at org.springframework.web.context.ContextLoaderListener.contextDestroyed(ContextLoaderListener.java:112)
alfresco_1 | at org.apache.catalina.core.StandardContext.listenerStop(StandardContext.java:4762)
alfresco_1 | at org.apache.catalina.core.StandardContext.stopInternal(StandardContext.java:5433)
alfresco_1 | at org.apache.catalina.util.LifecycleBase.stop(LifecycleBase.java:257)
alfresco_1 | at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:187)
alfresco_1 | at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:717)
alfresco_1 | at org.apache.catalina.core.ContainerBase.access$000(ContainerBase.java:129)
alfresco_1 | at org.apache.catalina.core.ContainerBase$PrivilegedAddChild.run(ContainerBase.java:150)
alfresco_1 | at org.apache.catalina.core.ContainerBase$PrivilegedAddChild.run(ContainerBase.java:140)
alfresco_1 | at java.base/java.security.AccessController.doPrivileged(Native Method)
alfresco_1 | at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:688)
alfresco_1 | at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:706)
alfresco_1 | at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:1133)
alfresco_1 | at org.apache.catalina.startup.HostConfig$DeployDirectory.run(HostConfig.java:1866)
alfresco_1 | at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
alfresco_1 | at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
alfresco_1 | at org.apache.tomcat.util.threads.InlineExecutorService.execute(InlineExecutorService.java:75)
alfresco_1 | at java.base/java.util.concurrent.AbstractExecutorService.submit(AbstractExecutorService.java:118)
alfresco_1 | at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:1045)
alfresco_1 | at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:429)
alfresco_1 | at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1576)
alfresco_1 | at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:309)
alfresco_1 | at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:123)
alfresco_1 | at org.apache.catalina.util.LifecycleBase.setStateInternal(LifecycleBase.java:423)
alfresco_1 | at org.apache.catalina.util.LifecycleBase.setState(LifecycleBase.java:366)
alfresco_1 | at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:936)
alfresco_1 | at org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:843)
alfresco_1 | at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
alfresco_1 | at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1384)
alfresco_1 | at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1374)
alfresco_1 | at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
alfresco_1 | at org.apache.tomcat.util.threads.InlineExecutorService.execute(InlineExecutorService.java:75)
alfresco_1 | at java.base/java.util.concurrent.AbstractExecutorService.submit(AbstractExecutorService.java:140)
alfresco_1 | at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:909)
alfresco_1 | at org.apache.catalina.core.StandardEngine.startInternal(StandardEngine.java:262)

 

9 Replies
cristinamr
Advanced

Re: alfresco community edition 7.0 integration with LDAP-AD using docker

Hi!

The error is:

 Ensure that the 'dir.root' property './alf_data' is pointing to the correct data location.

Nothing to see with LDAP. It suggests you that your content store is in different location.

Where is defined your dir.root property? Maybe in your alfresco-global.properties? Please check it and verify is pointing to the correct path of your contentstore.

Check here an example of docker-compose.yml configuration:

 volumes:
            - ./volumes/data/alf-repo-data:/usr/local/tomcat/alf_data

Cheers.

 

--
VenziaIT: helping companies since 2005! Our ECM products: AQuA & Seidoc
waqar
Member II

Re: alfresco community edition 7.0 integration with LDAP-AD using docker

Thanks for your responce i have mentioned volumes property along with path but still getting the same error.

 

JAVA_OPTS: "
-Ddb.driver=org.postgresql.Driver
-Ddb.username=alfresco
-Ddb.password=alfresco
-Ddb.url=jdbcSmiley Tongueostgresql://postgres:5432/alfresco
-Dsolr.host=solr6
-Dsolr.port=8983
-Dsolr.http.connection.timeout=1000
-Dsolr.secureComms=none
-Dsolr.base.url=/solr
-Dindex.subsystem.name=solr6
-Dshare.host=127.0.0.1
-Dshare.port=8080
-Dalfresco.host=localhost
-Dalfresco.port=8080
-Daos.baseUrlOverwrite=http://localhost:8080/alfresco/aos
-Dmessaging.broker.url=\"failoverSmiley Sadnio://activemq:61616)?timeout=3000&jms.useCompression=true\"
-Ddeployment.method=DOCKER_COMPOSE
-DlocalTransform.core-aio.url=http://transform-core-aio:8090/
-Dcsrf.filter.enabled=false
-XX:MinRAMPercentage=50 -XX:MaxRAMPercentage=80Dauthentication.chain=alfinst:alfrescoNtlm,ldap-ad1:ldap-ad
-Dldap.authentication.allowGuestLogin=false
-Dldap.authentication.userNameFormat=%s@nust.edu.pk
-Dldap.authentication.java.naming.provider.url=ldap://1.2.3.4:389
-Dldap.authentication.defaultAdministratorUserNames=Administrator,alfresco
-Dldap.synchronization.java.naming.security.principal=demo
-Dldap.synchronization.java.naming.security.credentials=******
-Dldap.synchronization.groupSearchBase=DC=mydomain,DC=local
-Dldap.synchronization.userSearchBase=DC=mydomain,DC=local

"
volumes: "
- ./volumes/data/alf-repo-data:/usr/local/tomcat/alf_data
- ./volumes/logs/alfresco:/usr/local/tomcat/logs
- ./volumes/config/alfresco-global.properties:/usr/local/tomcat/shared/classes/alfresco-global.properties

"

cristinamr
Advanced

Re: alfresco community edition 7.0 integration with LDAP-AD using docker

Please check what do you have defined in your alfresco-global.properties. For example in my case I have these config:

alfresco-global.properties

dir.root=/usr/local/tomcat/alf_data

docker-compose.yml

volumes:
            - ./volumes/data/alf-repo-data:/usr/local/tomcat/alf_data

Let us know.

Cheers,

Cristina.

--
VenziaIT: helping companies since 2005! Our ECM products: AQuA & Seidoc
abhinavmishra14
Advanced

Re: alfresco community edition 7.0 integration with LDAP-AD using docker

Just to give little bit clarity on docker volumes, there are two types of volumes you can create.

1- External named volumes

     - External named volumes can be used across the Docker installation and they need to be created by the user (otherwise fails) using the docker volume create command. You can enable/disable 'external' flag depending on your requirements. Note that if 'external' flag is 'true' then you have to create the volumes as aforementioned. Else you can set the flag to 'false' and docker-compose will take care of creating it. 

Samples can be seen here: 

https://github.com/abhinavmishra14/change-acs-share-port-demo/blob/master/docker-compose.yml#L55

https://github.com/abhinavmishra14/change-acs-share-port-demo/blob/master/docker-compose.yml#L160

 

2- Bind mount

  - A local directory is referenced by its absolute path on the host machine. The local directory does not need to exist on the Docker host unlike external named volumes. It is created on demand if it does not yet exist.

Samples:

https://github.com/abhinavmishra14/change-acs-share-port-demo/blob/master/docker-compose-v3.yml#L62

 

You can also read more here : https://docs.docker.com/storage/

~Abhinav
(ACSCE, AWS SAA, Azure Admin)
cristinamr
Advanced

Re: alfresco community edition 7.0 integration with LDAP-AD using docker

Please @waqar stop to open threads duplicated in the forum. In other case will be very dificult to help you.

Cheking in deep your log, we can see this error:

 [main] CONTENT INTEGRITY ERROR: System content not found in content store: 'store://2021/6/24/5/56/d369cd7f-4b22-490c-8545-3d3cb2248057.bin'

The system cannot find store://2021/6/24/5/56/d369cd7f-4b22-490c-8545-3d3cb2248057.bin

Could you please verify in your alf_data/contentstore if you have this path: 2021/6/24/5/56/ and this file: d369cd7f-4b22-490c-8545-3d3cb2248057.bin  ?

--
VenziaIT: helping companies since 2005! Our ECM products: AQuA & Seidoc
michaelzietlow
Active Member II

Re: alfresco community edition 7.0 integration with LDAP-AD using docker

It does look like your Content Store is mispointed or you dont have 'alfresco_user_store.adminpassword' specified in your properties file. Is your content store is password protected?

I dont run Alfresco from docker but I'll share with you some ldap configs.
Your LDAP and mine have completely diffrent ou & cn's so dont copy/paste, but but maybe this can give you ideas how I got Alfresco communication with Windows AD in my lab environment.


centoslab-community7.0:/etc/opt/alfresco/content-services/classpath/alfresco-global.properties:

# Admin Content Store Password
alfresco_user_store.adminpassword=_________________


# LDAP SETTINGS.
authentication.chain=alfrescoNtlm1:alfrescoNtlm,ldap1:ldap
synchronization.syncWhenMissingPeopleLogIn=true
synchronization.import.cron=0 0/10 * * * ?
ldap.authentication.active=true
ldap.authentication.allowGuestLogin=false
ldap.authentication.userNameFormat=%s@MYDOMAIN.local
ldap.authentication.java.naming.factory.initial=com.sun.jndi.ldap.LdapCtxFactory
ldap.authentication.java.naming.provider.url=ldap://dc.MYDOMAIN.com:389
ldap.authentication.java.naming.security.authentication=simple
ldap.authentication.escapeCommasInBind=false
ldap.authentication.escapeCommasInUid=false
ldap.authentication.defaultAdministratorUserNames=
ldap.synchronization.active=true
ldap.synchronization.java.naming.security.authentication=simple
ldap.synchronization.java.naming.security.principal=alfresco_ADuser@MYDOMAIN.local
ldap.synchronization.java.naming.security.credentials=________________________________
ldap.synchronization.groupQuery=(objectclass\=*)
ldap.synchronization.groupDifferentialQuery=(objectclass\=*)
ldap.synchronization.personQuery            =(&(objectClass=organizationalPerson)(!(memberOf=CN=DisabledUsers,OU=MYDOMAIN Users,DC=MYDOMAIN,DC=local))(!(memberOf=CN=machineaccounts,OU=MYDOMAIN Users,DC=MYDOMAIN,DC=local))(!(memberOf=CN=disabled,OU=MYDOMAIN Users,DC=MYDOMAIN,DC=local)))
ldap.synchronization.personDifferentialQuery=(&(objectClass=organizationalPerson)(!(memberOf=CN=DisabledUsers,OU=MYDOMAIN Users,DC=MYDOMAIN,DC=local))(!(memberOf=CN=machineaccounts,OU=MYDOMAIN Users,DC=MYDOMAIN,DC=local))(!(memberOf=CN=disabled,OU=MYDOMAIN Users,DC=MYDOMAIN,DC=local)))
ldap.synchronization.groupSearchBase=ou\=MYDOMAIN Groups,dc\=MYDOMAIN,dc\=local
ldap.synchronization.userSearchBase=ou\=MYDOMAIN Users,dc\=MYDOMAIN,dc\=local
ldap.synchronization.modifyTimestampAttributeName=modifyTimestamp
ldap.synchronization.timestampFormat=yyyyMMddHHmmss'.0Z'
ldap.synchronization.userIdAttributeName=sAMAccountName
ldap.synchronization.userFirstNameAttributeName=givenName
ldap.synchronization.userLastNameAttributeName=sn
ldap.synchronization.userEmailAttributeName=mail
ldap.synchronization.userOrganizationalIdAttributeName=company
ldap.synchronization.defaultHomeFolderProvider=largeHomeFolderProvider
ldap.synchronization.groupIdAttributeName=cn
ldap.synchronization.groupDisplayNameAttributeName=displayName
ldap.synchronization.groupType=group
ldap.synchronization.personType=user
ldap.synchronization.groupMemberAttributeName=member
ldap.synchronization.enableProgressEstimation=true
ldap.synchronization.syncOnStartup=true
ldap.synchronization.synchronizeChangesOnly=false

 

waqar
Member II

Re: alfresco community edition 7.0 integration with LDAP-AD using docker

@abhinavmishra14  i have confiqured docker.compose  according to the point  as you have mentioned in https://hub.alfresco.com/t5/alfresco-content-services-forum/alfresco-global-properties-location/m-p/...   .so i have mentioned volumes property in order to override settings in alfresco global properties file.but i am unable to resolve the same error.

 

JAVA_OPTS: "
-Ddb.driver=org.postgresql.Driver
-Ddb.username=alfresco
-Ddb.password=alfresco
-Ddb.url=jdbcSmiley Tongueostgresql://postgres:5432/alfresco
-Dsolr.host=solr6
-Dsolr.port=8983
-Dsolr.http.connection.timeout=1000
-Dsolr.secureComms=none
-Dsolr.base.url=/solr
-Dindex.subsystem.name=solr6
-Dshare.host=127.0.0.1
-Dshare.port=8080
-Dalfresco.host=localhost
-Dalfresco.port=8080
-Daos.baseUrlOverwrite=http://localhost:8080/alfresco/aos
-Dmessaging.broker.url=\"failoverSmiley Sadnio://activemq:61616)?timeout=3000&jms.useCompression=true\"
-Ddeployment.method=DOCKER_COMPOSE
-DlocalTransform.core-aio.url=http://transform-core-aio:8090/
-Dcsrf.filter.enabled=false
-XX:MinRAMPercentage=50 -XX:MaxRAMPercentage=80

-Dauthentication.chain=alfinst:alfrescoNtlm,ldap-ad1:ldap-ad
-Dldap.authentication.allowGuestLogin=false
-Dldap.authentication.userNameFormat=%s@nust.edu.pk
-Dldap.authentication.java.naming.provider.url=ldap://1.2.73:389
-Dldap.authentication.defaultAdministratorUserNames=Administrator,alfresco
-Dldap.synchronization.java.naming.security.principal=dem0.ict
-Dldap.synchronization.java.naming.security.credentials=demo
-Dldap.synchronization.groupSearchBase=DC=mydomain,DC=local
-Dldap.synchronization.userSearchBase=DC=mydomain,DC=local
"
volumes:"
- ./volumes/data/alf-repo-data:/usr/local/tomcat/alf_data
"

waqar
Member II

Re: alfresco community edition 7.0 integration with LDAP-AD using docker

@cristinamr  as i am using docker i cant see or access these files.can you please help how can access these files using docker

cristinamr
Advanced

Re: alfresco community edition 7.0 integration with LDAP-AD using docker

Following this line in your docker-compose.yml:

volumes:"
- ./volumes/data/alf-repo-data:/usr/local/tomcat/alf_data
"

Check

{ALF_PATH_INSTALL}/volumes/data/alf-repo-data/contentstore

Inside of these path, check if you have this path: 2021/6/24/5/56/ and this file: d369cd7f-4b22-490c-8545-3d3cb2248057.bin

 

--
VenziaIT: helping companies since 2005! Our ECM products: AQuA & Seidoc