Java

MANUAL INSTALLATION of ACS-7.2.0, ASS-2.x and Local T-Engine Service using distribution package


Spring Datafication 2023. 2. 28. 13:40

Prerequisites

Refer specifications requirements and supported platforms.

NOTE: THIS IS ABOUT ACS7 setup on Windows 10 x64 Platform

REQUIRED SOFTWARES

  1. ACS-7.2.0 package (alfresco-content-services-community-distribution-7.2.0.1)
  2. ASS-2.0.3 package (alfresco-search-services-2.0.3.5)
  3. Java: Oracle jdk-11.0.13
  4. Tomcat: Tomcat 9.0.62
  5. ActiveMQ: ActiveMQ v5.16.2. Mandatory for transformation services. Check this out for Local Transformation Service
  6. DB: PostgreSQL 13

--- MANUAL INSTALLATION PROCESS Documentations
7. ImageMagick: ImageMagick v7.1.0
8. Libreoffice: LibreOffice v7.0.6
9. Alfresco Transform Core AIO Boot App v2.5.7

Type of deployment:

ACS, Share, ASS (SOLR6), and Local transformation services on same machine
Setup With Shared Secret (Without SSL)

Let’s download all the required packages that we need for the setup.

Note: Make sure you set the JAVA_HOME environment variable (on windows). It is the installation path of jdk. E.g. JAVA_HOME=C:\Program Files\Java\jdk-11.0.15

Optional Alfresco module packages (amps)-Useful for admins/developers:

DB Setup POSTGRESQL 13

Ensure postgres is running on port 5432. If not, change the port in postgresql.conf file and restart the service.
Create a database named alfresco and a user named alfresco with password alfresco.

create role alfresco LOGIN password 'alfresco';

create database alfresco encoding 'utf8';

grant all on database alfresco to alfresco;

ACS Setup

  1. Create a folder ACS-7.2.0 and extract the above ACS Download package in it.

  2. Create a folder named alf_data in ACS-7.2.0 folder.

  3. Create folder tomcat in ACS-7.2.0 folder and extract the tomcat package in it.

  4. Set environment variables for ACS-7.2.0 folder (eg. ALF_HOME) . Helpful for apply_amps.bat, clean_tomcat.bat

  5. Copy downloads ACS-7.2.0\keystore into ACS-7.2.0\alf_data\keystore

  6. Copy amps:

    • Copy contents from downloads ACS-7.2.0\amps into ACS-7.2.0\amps.
    • Optional: Copy support-tools-repo.amp into ACS-7.2.0\amps, support-tools-share.amp into ACS-7.2.0\amps_share, javascript-console-repo.amp into ACS-7.2.0\amps, javascript-console-share.amp into ACS-7.2.0\amps
  7. Copy download ACS-7.2.0\bin” into “ACS-7.2.0\bin” directory

  8. Licenses: Copy the contents from “ACS-7.2.0\licenses” into “ACS-7.2.0\licenses” directory.

  9. ACS TOMCAT:

    • Copy the contents from download “ACS-7.2.0\web-server\conf” into “ACS-7.2.0\tomcat\conf” folder.
    • Copy the contents from download “ACS-7.2.0\web-server\lib\” into “ACS-7.2.0\tomcat\lib\” folder.
    • Copy the contents from download “ACS-7.2.0\web-server\shared\classes” into “ACS-7.2.0\tomcat\shared\classes\” folder.
  10. Encryption keystore config:

    • Create a new directory named 'keystore' under 'ACS-7.2.0\tomcat\shared\classes\alfresco\extension' directory. We need to copy the 'metadata-keystore' related configs in this newly created directory.

      • Copy the 'metadata-keystore' directory from downloads 'ACS-7.2.0\keystore\metadata-keystore' to 'ACS-7.2.0\tomcat\shared\classes\alfresco\extension\keystore'
    • SET environment variable for meta-data JAVA_TOOL_OPTIONS="-Dencryption.keystore.type=JCEKS -Dencryption.cipherAlgorithm=DESede/CBC/PKCS5Padding -Dencryption.keyAlgorithm=DESede -Dencryption.keystore.location=<REPLACE-ACS-7.2.0>\tomcat\shared\classes\alfresco\extension\keystore\metadata-keystore\keystore -Dmetadata-keystore.password=mp6yc0UD9e -Dmetadata-keystore.aliases=metadata -Dmetadata-keystore.metadata.password=oKIWzVdEdA -Dmetadata-keystore.metadata.algorithm=DESede"

  11. Delete all files/folders from “ACS-7.2.0\tomcat\webapps”.

  12. Copy the contents from downloads “ACS-7.2.0\web-server\webapps” into “ACS-7.2.0\tomcat\webapps\” folder.

  13. Delete all files/folders from “ACS-7.2.0\tomcat\work\Catalina\localhost” if there are any.

  14. Open and edit server.xml file which can be found under: “ACS-7.2.0\tomcat\conf” directory [Full path: ACS-7.2.0\tomcat\conf\server.xml]:

    • Find Connector with port "8080”. Add the URIEncoding and maxHttpHeaderSize attributes.
      <Connector port="8080" protocol="HTTP/1.1"
      URIEncoding="UTF-8" connectionTimeout="20000"
      maxHttpHeaderSize="32768"
      redirectPort="8443" /> 
      
  15. Open and edit the ACS-7.2.0\tomcat\conf\catalina.properties file:
    Update the value of the shared.loader= property to the following:

    shared.loader=${catalina.base}/shared/classes,${catalina.base}/shared/lib/*.jar
  16. We need to add JAVA_TOOL_OPTIONS java environment variable for metadata encryption, we had copied the keystore under 'ACS-7.2.0\tomcat\shared\classes\alfresco\extension\keystore\metadata-keystore' directory already. Check the steps above. Open and edit ACS-7.2.0\tomcat\bin\catalina.bat . Add the variable after JAVA_OPTS in catalina.bat file. If you add this variable at the end of the file, it is not getting recognized for some reason. So make sure you add the variable before JAVA_OPTS as mentioned above. See the example screenshot below for reference or check here.

    rem ACS72 Custom changes [Start] ##############
    set "JAVA_TOOL_OPTIONS=-Dencryption.keystore.type=JCEKS -Dencryption.cipherAlgorithm=DESede/CBC/PKCS5Padding -Dencryption.keyAlgorithm=DESede -Dencryption.keystore.location=C:\alfresco-community72\tomcat\shared\classes\alfresco\extension\keystore\metadata-keystore\keystore -Dmetadata-keystore.password=mp6yc0UD9e -Dmetadata-keystore.aliases=metadata -Dmetadata-keystore.metadata.password=oKIWzVdEdA -Dmetadata-keystore.metadata.algorithm=DESede"
    rem ACS72 Custom changes [End] ##############
  17. Rename “ACS-7.2.0\tomcat\shared\classes\alfresco-global.properties.sample” to “alfresco-global.properties”

    • Open and edit “ACS-7.2.0\tomcat\shared\classes\alfresco-global.properties” and add the following configuration properties:
    • Add the “dir.root” property as path to alf_data folder and add 'dir.keystore' property to the above copied encryption keystore path
      dir.root={PERONSAL_DIRECTORY/ACS-7.2.0}/alf_data
      dir.keystore={PERONSAL_DIRECTORY/ACS-7.2.0}/tomcat/shared/classes/alfresco/extension/keystore
  18. Add alfresco and share host, port, context and protocol specific properties. For more details see: https://docs.alfresco.com/content-services/latest/config/#using-alfresco-globalproperties

    
    

alfresco.context=alfresco
alfresco.host=${localname}
alfresco.port=8080
alfresco.protocol=http
share.context=share
share.host=${localname}
share.port=8080
share.protocol=http

19. Add the database connection properties which alfresco will use to create a JDBC connection with db. Use the db name and credentials when we prepared the database.
```properties
db.driver=org.postgresql.Driver
db.username=alfresco
db.password=alfresco
db.name=alfresco
db.url=jdbc:postgresql://localhost:5432/${db.name}
db.pool.max=275
db.pool.validate.query=SELECT 1
#Add the server mode property, leave it default to ‘UNKNOWN’.
system.serverMode=UNKNOWN
#Add the alfresco rmi services port and host properties.
alfresco.rmi.services.port=50500
alfresco.rmi.services.host=0.0.0.0

T-Service Configuration

To set up Local transformation service, we need to install Imagemagick, Libreoffice and AlfrescoPDFRenderer locally and executables will be used by transformation service spring boot application.
Extract binaries from the downloads folder and copy them to the following locations:

  • ACS-7.2.0\imagemagick
  • ACS-7.2.0\libreoffice
  • ACS-7.2.0\activemq

Alfresco PDF Renderer Setup:

  • Extract the alfresco-pdf-renderer-2.1.0.zip file from the downloads folder and copy the alfresco-pdf-renderer-2.1.0 folder to ACS-7.2.0\alfresco-pdf-renderer-2.1.0 directory.

  • Create a new directory named 'exiftool' under "C:\alfresco-community72" Extract to "ACS-7.2.0\exiftool"

    • Set the exiftool directory to Windows PATH Environment Variable: %ALF_HOME%\exiftool
  • Update alfresco-global.properties to enable transformation service:

Open and edit “ACS-7.2.0\tomcat\shared\classes\alfresco-global.properties”
Enable local transformation service (its enabled by default but just FYI here):

localTransform.core-aio.url=http://localhost:8090/
#This property is default true, here it it for information purpose.
local.transform.service.enabled=true

#Add the activemq url property and enabled messaging subsystem. It will be used when you setup transformation service.
messaging.broker.url=tcp://localhost:61616

#This property is default true, here it it for information purpose.
messaging.subsystem.autoStart=true

#If you have setup username and password for AMQ, then set the below properties. In my case I have kept default admin/admin
messaging.broker.username=admin
messaging.broker.password=admin
  • Copy the downloaded transform-core-aio-boot jar file to 'ACS-7.2.0\bin" directory.

    Transformation Service EXECUTIONS:

    java -DPDFRENDERER_EXE="{ACS-7.2.0}\alfresco-pdf-renderer\alfresco-pdf-renderer.exe" -DLIBREOFFICE_HOME="{ACS-7.2.0}\libreoffice" -DIMAGEMAGICK_ROOT="{ACS-7.2.0}\imagemagick" -DIMAGEMAGICK_DYN="{ACS-7.2.0}\imagemagick\lib" -DIMAGEMAGICK_CODERS="{ACS-7.2.0}\imagemagick\modules\coders" -DIMAGEMAGICK_CONFIG="{ACS-7.2.0}\imagemagick" -DIMAGEMAGICK_EXE="{ACS-7.2.0}\imagemagick\convert.exe" -DACTIVEMQ_URL=tcp://localhost:61616 -jar {ACS-7.2.0}\bin\alfresco-transform-core-aio-boot-2.5.7.jar

    Verify Transformation Service:

    transformation service at http://localhost:8090

  • Update alfresco-global.properties to add other misc. properties:

#Add property for email notification on invite, it is by default disabled.
notification.email.siteinvite=false
Add the license location property.
### License location ###
dir.license.external=C:/alfresco-community72
#Add following properties related to security, smart folder and JMX. All values are default out-of-the-box
security.anyDenyDenies=false
smart.folders.enabled=false
alfresco.jmx.connector.enabled=false

Logging Configuration

  • Go to {ACS-7.2.0}\tomcat\shared\classes\alfresco\extension\ folder and rename “custom-log4j.properties.sample” to “custom-log4j.properties”

Apply amps to alfresco.war and share.war:

NOTE: Mandatory Amps
Execute 'apply_amps.bat' script to apply amps, it will install amps copied under {ACS-7.2.0}\amps and C:\alfresco-community72\amps_share directories to alfresco.war and share.war.
Open windows command prompt

  • Go to {ACS-7.2.0}\bin path
  • Execute the 'apply_amps.bat'
    ./apply_amps.bat

Share Config Custom Changes

<repository-url>http://localhost:8080/alfresco </repository-url>

Make sure you update the share "Remote" configuration to point to the alfresco host and port, in case you are setting up alfresco and share on different servers. Default values are "localhost" and "8080". We are setting up both ACS and Share on same host so we will leave it default.

<config evaluator="string-compare" condition="Remote">
<remote>
<endpoint>
<id>alfresco-noauth</id>
<name>Alfresco - unauthenticated access</name>
<description>Access to Alfresco Repository WebScripts that do not require authentication</description>
<connector-id>alfresco</connector-id>
<endpoint-url>http://localhost:8080/alfresco/s</endpoint-url>
<identity>none</identity>
</endpoint>

         <endpoint>
            <id>alfresco</id>
            <name>Alfresco - user access</name>
            <description>Access to Alfresco Repository WebScripts that require user authentication</description>
            <connector-id>alfresco</connector-id>
            <endpoint-url>http://localhost:8080/alfresco/s</endpoint-url>
            <identity>user</identity>
         </endpoint>

         <endpoint>
            <id>alfresco-feed</id>
            <name>Alfresco Feed</name>
            <description>Alfresco Feed - supports basic HTTP authentication via the EndPointProxyServlet</description>
            <connector-id>http</connector-id>
            <endpoint-url>http://localhost:8080/alfresco/s</endpoint-url>
            <basic-auth>true</basic-auth>
            <identity>user</identity>
         </endpoint>

         <endpoint>
            <id>alfresco-api</id>
            <parent-id>alfresco</parent-id>
            <name>Alfresco Public API - user access</name>
            <description>Access to Alfresco Repository Public API that require user authentication.
                         This makes use of the authentication that is provided by parent 'alfresco' endpoint.</description>
            <connector-id>alfresco</connector-id>
            <endpoint-url>http://localhost:8080/alfresco/api</endpoint-url>
            <identity>user</identity>
         </endpoint>
      </remote>
   </config>

Alfresco Config Custom Changes (share where user search doesn't work changes)

There is a known issue with share where user search doesn't work. For more info see these issues (The issue still persist in Share 7):
https://github.com/Alfresco/acs-community-packaging/issues/367
https://github.com/Alfresco/acs-community-deployment/issues/85
Find the true tag and change the value to 'false',
Update {ACS-7.2.0}\tomcat\shared\classes\alfresco\web-extension\share-config-custom.xml


<config evaluator="string-compare" condition="Users" replace="true">
<users>
<!-- minimum length for username and password -->
<username-min-length>2</username-min-length>
<password-min-length>3</password-min-length>
<!-- Default value is 'true', setting it to 'false' to fix the user search issue. -->
<show-authorization-status>false</show-authorization-status>
</users>
<!-- This enables/disables the Add External Users Panel on the Add Users page. -->
<enable-external-users-panel>false</enable-external-users-panel>
</config>

Setup and Configure ASS (Alfresco Search Services):

  • Download and unzip alfresco-search-services-2.0.3.5.zip
  • Copy the extracted folder “alfresco-search-services” to e.g. {ASS}.
  • Open “{ACS-7.2.0}\tomcat\shared\classes\alfresco-global.properties” and add the following configuration properties:
    solr.host=localhost
    solr.port=8983
    solr.secureComms=secret #Possible values are: secret, https
    solr.sharedSecret=secret
    solr.base.url=/solr
    index.subsystem.name=solr6

Note: We are setting up solr6 without SSL and with shared secret, hence using non SSL port and setting secureComms property as secret.

Optional

enabling the multi language search support, Its optional if you wish to enable it. By default it is disabled. Open “{ASS}\solrhome\conf\shared.properties” and update following:

alfresco.cross.locale.datatype.0={http://www.alfresco.org/model/dictionary/1.0}text
alfresco.cross.locale.datatype.1={http://www.alfresco.org/model/dictionary/1.0}content
alfresco.cross.locale.datatype.2={http://www.alfresco.org/model/dictionary/1.0}mltext
#enabling search suggestions “{ASS}\solrhome\conf\shared.properties” 
alfresco.suggestable.property.0={http://www.alfresco.org/model/content/1.0}name
alfresco.suggestable.property.1={http://www.alfresco.org/model/content/1.0}title
alfresco.suggestable.property.2={http://www.alfresco.org/model/content/1.0}description
alfresco.suggestable.property.3={http://www.alfresco.org/model/content/1.0}content

More details on shared.properties can be found here: https://docs.alfresco.com/search-services/latest/install/options/

If you would setup search services on a different or remote machine, you would need to set the SOLR_SOLR_HOST, SOLR_SOLR_PORT, SOLR_SOLR_BASEURL, SOLR_ALFRESCO_HOST, SOLR_ALFRESCO_PORT and SOLR_ALFRESCO_BASEURL environment variables. This is optional but we will keep the mapping for future reference.

We are setting up without SSL, so set this variable SOLR_ALFRESCO_SECURECOMMS to secret. It is mandatory as default value is https. And Set the 'JAVA_TOOL_OPTIONS' variable to pass the JVM arguments for Solr and Alfresco shared secret communication mechanism. Open “{ASS}\solr.in.cmd” file and add following at the end of the file:

set SOLR_SOLR_HOST=localhost
set SOLR_SOLR_PORT=8983
set SOLR_SOLR_BASEURL=/solr
set SOLR_ALFRESCO_HOST=localhost
set SOLR_ALFRESCO_PORT=8080
set SOLR_ALFRESCO_BASEURL=/alfresco

:: Since we are setting up with no SSL and shared secret, this property need to be set to secret. Default is https
set SOLR_ALFRESCO_SECURECOMMS=secret

rem ACS72 shared secret changes [Start] ##############
set JAVA_TOOL_OPTIONS=-Dalfresco.secureComms.secret=secret

rem ############ OR Instead of JAVA_TOOL_OPTIONS, you can also export SOLR_OPTS , example below. Make sure you dont export both###
rem set SOLR_OPTS=-Dalfresco.secureComms.secret=secret

rem ACS72 shared secret changes [End] ##############

You can also set SOLR_HOME variable in solr.in.cmd (if you see error like ERROR: Solr home directory {ASSS} must contain solr.xml, then this setting is must)
set SOLR_HOME={ASS}\solrhome
Alternatively you can set the properties in “{ASS}\solrhome\templates\rerank\conf\solrcore.properties” file as well before cores are created. If you have both alfresco and archive cores already created use the environment variable based approach. Example:


alfresco.host=localhost
alfresco.port=8080
alfresco.port.ssl=8443
alfresco.baseUrl=/alfresco
# secret, https
alfresco.secureComms=secret

For all the externalized search service configurations (environment variables), visit: https://docs.alfresco.com/search-services/latest/config/#search-services-externalized-configuration

You can use the modheader browser extension to pass the header info,
Now we are done with all the setup and config changes. Here are full “alfresco-global.properties”, “custom-log4j.properties”, “shared.properties” , “solr.in.cmd”, "solrcore.properties" files for reference:

alfresco-global.properties:

###############################
## Common Alfresco Properties #
###############################


dir.root={ACS-7.2.0}/alf_data
dir.contentstore=${dir.root}/contentstore
dir.contentstore.deleted=${dir.root}/contentstore.deleted


#
# Encryption properties
#
# default keystores location is now this, it was changed from previous versions
# for more details see: https://docs.alfresco.com/content-services/latest/admin/security/#alfresco-keystore-configuration
dir.keystore={ACS-7.2.0}/tomcat/shared/classes/alfresco/extension/keystore

#
# URL Generation Parameters (The ${localname} token is replaced by the local server name)
#-------------
alfresco.context=alfresco
alfresco.host=${localname}
alfresco.port=8080
alfresco.protocol=http
share.context=share
share.host=${localname}
share.port=8080
share.protocol=http

### database connection properties ###
db.driver=org.postgresql.Driver
db.username=alfresco
db.password=alfresco
db.name=alfresco
db.url=jdbc:postgresql://localhost:5432/${db.name}
# Note: your database must also be able to accept at least this many connections.  Please see your database documentation for instructions on how to configure this.
db.pool.max=275
db.pool.validate.query=SELECT 1

# The server mode. Set value here
# UNKNOWN | TEST | BACKUP | PRODUCTION
system.serverMode=UNKNOWN

### RMI registry port for JMX ###
alfresco.rmi.services.port=50500

# Default value of alfresco.rmi.services.host is 0.0.0.0 which means 'listen on all adapters'.
# This allows connections to JMX both remotely and locally.
alfresco.rmi.services.host=0.0.0.0

#
#
# Assign individual ports for each service for best performance
# or run several services on the same port. You can even run everything on 50500 if needed.
# Select 0 to use a random unused port.
#monitor.rmi.service.port=50508


### E-mail site invitation setting ###
notification.email.siteinvite=false

### License location ###
dir.license.external={ACS-7.2.0}

### Allow extended ResultSet processing
security.anyDenyDenies=false

### Smart Folders Config Properties ###
smart.folders.enabled=false

### Remote JMX (Default: disabled) ###
alfresco.jmx.connector.enabled=false

## AMQ And Transformation services
localTransform.core-aio.url=http://localhost:8090/
local.transform.service.enabled=true
messaging.broker.url=tcp://localhost:61616
messaging.subsystem.autoStart=true
#If you have setup username and password for AMQ, then set the below properties. In my case I have kept default admin/admin
messaging.broker.username=admin
messaging.broker.password=admin

################ Solr Search service configurations ###############

#
# Index Recovery Mode
#-------------
#index.recovery.mode=AUTO

# Set this property unless you have explicitly chosen to expose some repository APIs without authentication
solr.host=localhost
solr.port=8983
#secret, https
solr.secureComms=secret
solr.sharedSecret=secret
solr.base.url=/solr
index.subsystem.name=solr6

custom-log4j.properties:

#Tranformer specific logs
log4j.logger.org.alfresco.repo.content.transform.TransformerDebug=info
log4j.logger.org.alfresco.util.exec.RuntimeExecBootstrapBean=info
log4j.logger.org.alfresco.util.exec.RuntimeExec=info

#ScriptLogger
log4j.logger.org.alfresco.repo.jscript.ScriptLogger=debug

#Log for email executer
log4j.logger.org.alfresco.repo.action.executer.MailActionExecuter=info

#Transaction specific logs
log4j.logger.org.alfresco.repo.transaction.RetryingTransactionHelper=info

#Solr specific logs
log4j.logger.org.alfresco.solr.query.AbstractQParser=debug
log4j.logger.org.alfresco.repo.search.impl.solr.SolrQueryHTTPClient=debug

#Metadata extractor
log4j.logger.org.alfresco.repo.content.metadata.AbstractMappingMetadataExtracter=info
log4j.logger.org.alfresco.repo.content.metadata.MetadataExtracterRegistry=info

#Thumbnail logs
log4j.logger.org.alfresco.repo.thumbnail=info

# FTP server debugging
log4j.logger.org.alfresco.ftp.protocol=info
log4j.logger.org.alfresco.ftp.server=info

shared.properties:

# Shared Properties file

#Host details an external client would use to connect to Solr
solr.host=localhost
#If not set then solr.port will be the jetty.port
#solr.port=8983
solr.baseurl=/solr

# Properties treated as identifiers when indexed

alfresco.identifier.property.0={http://www.alfresco.org/model/content/1.0}creator
alfresco.identifier.property.1={http://www.alfresco.org/model/content/1.0}modifier
alfresco.identifier.property.2={http://www.alfresco.org/model/content/1.0}userName
alfresco.identifier.property.3={http://www.alfresco.org/model/content/1.0}authorityName
alfresco.identifier.property.4={http://www.alfresco.org/model/content/1.0}lockOwner

# Suggestable Properties
alfresco.suggestable.property.0={http://www.alfresco.org/model/content/1.0}name
alfresco.suggestable.property.1={http://www.alfresco.org/model/content/1.0}title
alfresco.suggestable.property.2={http://www.alfresco.org/model/content/1.0}description
alfresco.suggestable.property.3={http://www.alfresco.org/model/content/1.0}content

# Data types that support cross locale/word splitting/token patterns if tokenised
alfresco.cross.locale.property.0={http://www.alfresco.org/model/content/1.0}name
alfresco.cross.locale.property.1={http://www.alfresco.org/model/content/1.0}lockOwner

# Data types that support cross locale/word splitting/token patterns if tokenised
alfresco.cross.locale.datatype.0={http://www.alfresco.org/model/dictionary/1.0}text
alfresco.cross.locale.datatype.1={http://www.alfresco.org/model/dictionary/1.0}content
alfresco.cross.locale.datatype.2={http://www.alfresco.org/model/dictionary/1.0}mltext

alfresco.model.tracker.cron=0/10 * * * * ? *

# Whether path queries are enabled.
alfresco.cascade.tracker.enabled=true

solr.in.cmd:

@echo off

REM Increase Java Min/Max Heap as needed to support your indexing / query needs
set SOLR_JAVA_MEM=-Xms2g -Xmx2g

REM Alfresco configuration. This file is automatically included by solr. You can define your custom settings here
set SOLR_OPTS=%SOLR_OPTS% -Dsolr.jetty.request.header.size=1000000 -Dsolr.jetty.threads.stop.timeout=300000 -Ddisable.configEdit=true

REM Location where Solr should write logs to. Absolute or relative to solr start dir
set SOLR_LOGS_DIR=..\..\logs
set LOG4J_CONFIG=file:!SOLR_LOGS_DIR!\log4j.properties


set SOLR_SOLR_HOST=localhost
set SOLR_SOLR_PORT=8983
set SOLR_SOLR_BASEURL=/solr
set SOLR_ALFRESCO_HOST=localhost
set SOLR_ALFRESCO_PORT=8080
set SOLR_ALFRESCO_BASEURL=/alfresco

:: Since we are setting up with no SSL, this property need to be set to secret. Default is https
set SOLR_ALFRESCO_SECURECOMMS=secret

rem ACS72 shared secret changes [Start] ##############
set JAVA_TOOL_OPTIONS=-Dalfresco.secureComms.secret=secret

rem ############ OR Instead of JAVA_TOOL_OPTIONS, you can also export SOLR_OPTS , example below. Make sure you dont export both###
rem set SOLR_OPTS=-Dalfresco.secureComms.secret=secret

rem ACS72 shared secret changes [End] ##############

solrcore.properties (Highlighting important properties only):

alfresco.host=localhost
alfresco.port=8080
alfresco.port.ssl=8443
alfresco.baseUrl=/alfresco

# secret, https
alfresco.secureComms=secret

START AND TEST

There are three services that we need to start one by one in order:

ActiveMQ

{ACS-7.2.0}\activemq\bin\win64\activemq.bat start

localTransformationService

     java -DPDFRENDERER_EXE="{ACS-7.2.0}\alfresco-pdf-renderer\alfresco-pdf-renderer.exe" -DLIBREOFFICE_HOME="{ACS-7.2.0}\libreoffice" -DIMAGEMAGICK_ROOT="{ACS-7.2.0}\imagemagick" -DIMAGEMAGICK_DYN="{ACS-7.2.0}\imagemagick" -DIMAGEMAGICK_CODERS="{ACS-7.2.0}\imagemagick\modules\coders" -DIMAGEMAGICK_CONFIG="{ACS-7.2.0}\imagemagick" -DIMAGEMAGICK_EXE="{ACS-7.2.0}\imagemagick\convert.exe" -DACTIVEMQ_URL=tcp://localhost:61616?timeout=3000 -jar {ACS-7.2.0}\bin\alfresco-transform-core-aio-boot-2.5.7.jar

Start DB

  • start “postgresql-x64-13” service.
    {PostgreSQL_DIR}\13\bin\pg_ctl.exe start -D “C:\PostgreSQL\13\data"

    Alfresco

  • “{ACS-7.2.0}\tomcat\bin” and execute following command:
    catalina.bat start
  • Or navigate to “{ACS-7.2.0}\tomcat\bin” folder and execute
    startup.bat

Solr6

To start SOLR6, use the following command by navigating to “{ASS}\solr\bin” folder via command prompt:

Initial start only

{ASS}\solr\bin\solr.cmd start -a "-Dcreate.alfresco.defaults=alfresco,archive"

Consecutive start command:

{ASS}\solr\bin\solr.cmd start

IMPORTANT: Notice

Any variable in curly braces (e.g. {ACS-7.2.0},{ASS}) should be replaced with the actual path of the folder used personally.

REFERENCE SITES

반응형

'Java' 카테고리의 다른 글

What is Singleton Design Pattern?  (0) 2022.11.10
HashMap Sorting Errors [Entry Result Manipulations].  (0) 2022.09.18
Apache POI EXCEL  (0) 2022.06.02