How to build and deploy the fileServersNG subsystem
fileServersNG is a replacement for the Alfresco file servers subsystem that uses the JFileServer code, and optionally JFileServer Enterprise add-on, to provide the file server capabilities for Alfresco (currently SMB and FTP/FTPS protocols). The fileServersNG subsystem is built as an AMP (Alfresco Module Package) that can then be deployed into an Alfresco Content Management Server setup.
The fileServerNG subsystem contains the JFileServer Enterprise add-on but requires a licence key to enable the additional functionality. With no valid licence key the file server subsystem will use the standard JFileServer protocols and functionality.
There are Docker images available with Alfresco 5.x and 6.0 servers configures with the fileServersNG file server subsystem, for more details see here.
Contents
The fileServersNG v5 Subsystem
For Alfresco version v5.x, and v4.x, use the fileServersNG-v5 project to build the AMP.
Building the fileServersNG v5 AMP
To build the fileServersNG-v5 AMP for use with Alfresco v5.x and v4.x.
- Clone, or download the project zip file and unpack it, from the GitHub project at https://github.com/FileSysOrg/fileServersNG-v5.
- Get your Alfresco version number
One way to get the Alfresco version is to login using Share, click on the Alfresco logo at the bottom of the page, in the popup window you should see the Alfresco version, for example '5.2.f'.
- Edit the pom.xml
In the fileServersNG-v5 project folder edit the pom.xml file, set the <alfresco.platform.version> to match your Alfresco version.
- Build the AMP file
Using the command :-
mvn clean package
This should generate the AMP file in the target/ folder with the name fileServersNG-v5-1.x.x.amp.
Deploying the fileServersNG v5 Subsystem
- Copy the fileServersNG-v5.1.x.x.amp file to the alfresco/amps folder of your Alfresco server setup
- Register the AMP using the following command
java -jar /alfresco/bin/alfresco-mmt.jar install <path-to-fileServersNG-amp-file> <path-to-alfresco-war-file> [-nobackup] [-force]
Where <path-to-fileServersNG-amp-file> is the path to the fileServersNG-v5-1.x.x.amp file in the alfresco/amps folder, and <path-to-alfresco-war-file> is the path to the original Alfresco WAR file that was deployed to the web server. If you used the Alfresco installer this would usually be the tomcat/webapps/alfresco.war file.
- Update your Alfresco configuration
Usually done via the alfresco-global.properties file. Disable the original file servers subsystem using :-
cifs.enabled=false ftp.enabled=false
Enable and configure the fileServersNG subsystem, for example :-
smb.enabled=true ftpng.enabled=true smb.tcpipSMB.port=1445 smb.dialects=SMB1 smb.sessionDebug=Negotiate,Socket ftp.port=1121 ftp.sessionDebug=State,PktType
Additional Setup For The JFileServer Enterprise Add-On
The JFileServer Enterprise add-on requires a valid licence key to enable it. Create the folder for the licence file at tomcat/shared/classes/license. Copy your JFileServer licence file, named jfileserver.lic, into the tomcat/shared/classes/license folder.
With the JFileServer Enterprise add-on the smb.dialects setting can also include SMB2 and SMB3 to enable the SMB2 protocol and SMB3 encryption. Use a comma delimited list of the SMB dialects to enable.
The fileServersNG v6 Subsystem
For Alfresco version v6.0 use the fileServersNG-v6 project to build the AMP.
Building the fileServersNG v6 AMP
To build the fileServersNG-v6 AMP for use with Alfresco v6.0.
- Clone, or download the project zip file and unpack it, from the GitHub project at https://github.com/FileSysOrg/fileServersNG-v6.
- Build the AMP file
Using the command :-
mvn clean package
This should generate the AMP file in the target/ folder with the name fileServersNG-v6-1.x.x.amp.
Deploying the fileServersNG v6 Subsystem
- Copy the fileServersNG-v6.1.x.x.amp file to the alfresco/amps folder of your Alfresco server setup
- Register the AMP using the following command
java -jar /alfresco/bin/alfresco-mmt-6.0.jar install <path-to-fileServersNG-amp-file> <path-to-alfresco-webapp> [-nobackup] [-force]
Where <path-to-fileServersNG-amp-file> is the path to the fileServersNG-v6-1.x.x.amp file in the alfresco/amps folder, and <path-to-alfresco-webapp> is the path to the Alfresco webapp folder on the web server.
Alfresco v6.x uses a containerised setup where a number of Docker images run the Alfresco repository, database server, indexing service and Share UI. See the wiki page about running the fileServersNG-v6 Docker image for details on how to run and configure the fileServersNG-v6 file servers subsystem here.