Fork me on GitHub

Silverpeas 6 will be the next major version of Silverpeas. It will be released in this year. It is in development and as such it isn't yet ready to be used for production.

This document is about how to install Silverpeas 6 on a server. However, as alternative, Silverpeas 6 is also available as an official docker image in the Official Docker Hub Repository.

Pre-releases of Silverpeas 6 are available for testing purpose in our Docker Hub repository. as well as from an IzPack Installer.

Silverpeas 6 isn't compatible with Silverpeas 5. For an upgrade from a Silverpeas 5 installation, please take care of:

Pre-requisite

Silverpeas 6 can be automatically deployed on the JEE application server Wildfly >= 8.1. We strongly recommend to deploy it on Wildfly 10 as this version is used to build the current version of JBoss EAP.

Silverpeas 6, like Silverpeas 5, depends on external tools to run or to offer a better user experience. Please find below a list of the tools you will need to install.

Java 8

Silverpeas requires Java SE Development Kit (JDK) version 8 to run, which can be downloaded from Oracle or from OpenJDK. Don't forget to set up the environment variable JAVA_HOME with the path of the installation directory of Java.

Wildfly

Silverpeas requires Wildfly as a runtime. We strongly recommend Wildfly 10 as JBoss EAP 7 is based upon it; JBoss EAP is the commercial, enterprise class, version of Wildfly sold by RedHat. If you need maintenance and services on the application server itself, then we recommend you to contact RedHat in order to subscribe to their RedHat Subscription plan. You can download Wildfly 10 from different location:

Once a Widfly or a JBoss EAP distribution downloaded, please unzip it into the location you want Wildfly/JBoss to be installed and then set up the environment variable JBOSS_HOME with the path of the extracted Wildfly/JBoss directory.

For example, in Unix:

  • Unzip the wildfly-10.1.0.Final.zip file into /opt/
  • Sets the $JBOSS_HOME environment variable with the path /opt/wildfly-10.1.0.Final

For example, in Windows:

  • Unzip the wildfly-10.1.0.Final.zip file into C:\Silverpeas
  • Sets the %JBOSS_HOME% environment variable with the path C:\Silverpeas\wildfly-10.1.0.Final

In the next sections, we will refer the JBOSS_HOME environment variable by its name (without the OS-specific characters like % or $).

PostgreSQL

Silverpeas supports the following RDBMS:

  • PostgreSQL >= 9.2,
  • MS-SQLServer,
  • and Oracle >= 12.

However we recommend to use PostgreSQL for its great capabilities and flexibilities compared to the others solutions. This is why Silverpeas is pre-configured to run on PostgreSQL 9.x which can be downloaded from here.

You will have to create a database Silverpeas and a user with administrative rights for this database. (The credentials of this user have to be specified in the Silverpeas configuration file; see the corresponding section.) You may use the tool pgAdmin which provides a GUI to manage PostgreSQL.

LibreOffice

Silverpeas needs LibreOffice (or OpenOffice.org) to convert documents into various formats (mainly in PDF). This office suite has to be ran as a service in background (daemon in Unix jargon).

It is a free software (free as freedom) and it can be downloaded from its home site.

ImageMagick

Silverpeas uses the image handling tool suite ImageMagick to render the preview of documents and to resize images used in Web pages.

It is a free software (free as freedom) and it can be downloaded from this page

SWFTools, Ghostscript and Pdf2Json

Whereas not required to run and to use Silverpeas, we recommend strongly to install the SWFTools tool suite to enhance the user experience with Silverpeas. It is used by Silverpeas to preview and to visualize any document content (whatever the document format). It depends on the Ghostscript software so you have also to install it.

Pdf2Json is another tool, developed and provided by FlexPaper. It is used by Silverpeas to split a large document into smaller pieces in order to be processed more efficiently by FlexPaper (that is used in the visualization of document content).

They are all free softwares (free as freedom) and they can be downloaded from:

If you expect to install Silverpeas on a server running with a Debian-based distribution, you cannot use the SWFTools software packaged with your distribution. Indeed, it lacks of the program pdf2swf that is used by Silverpeas.

Installation

You will get better performance with GNU/Linux (or *BSD) systems.

Preparing Silverpeas

We currently provide a distribution of Silverpeas 6 which is a packaged and a pre-configured version of the Silverpeas installation tool. It will build Silverpeas 6 from different software bundles downloaded from our Nexus Repository Manager, then it will set up Wildfly and the database for Silverpeas.

Please download:

Snapshot release: silverpeas-6.0-SNAPSHOT-wildfly10.zip (the GPG signature of the distribution)

6.0-rc2 release: silverpeas-6.0-rc2-wildfly10.zip (the GPG signature of the distribution)

Check the integrity of the distribution after importing our public key:

gpg --keyserver hkp://pgp.mit.edu --recv-keys 3DF442B6
gpg --verify silverpeas-6.0-SNAPSHOT-wildfly10.zip.asc

Unzip the content into the location you want Silverpeas to be installed.

Set up the environment variable SILVERPEAS_HOME with the path of the extracted Silverpeas directory.

For example, in Unix:

  • Unzip the silverpeas-6.0-SNAPSHOT-wildfly10.zip file into /opt/
  • Sets the $SILVERPEAS_HOME environment variable with the path /opt/silverpeas-6.0-SNAPSHOT-wildfly10

For example, in Windows:

  • Unzip the silverpeas-6.0-SNAPSHOT-wildfly10.zip file into C:\Silverpeas
  • Sets the %SILVERPEAS_HOME% environment variable with the path C:/Silverpeas/silverpeas-6.0-SNAPSHOT-wildfly10 (the slash instead of the backslash character as path separator is normal and SILVERPEAS_HOME should be set as such)

In the next sections, we will refer the SILVERPEAS_HOME environment variable by its name (without the OS-specific characters like % or $).

Proxy configuration

The installation process starts by downloading from our Nexus Repository Manager the different software components that made up Silverpeas. Hence, an access to the Internet is required, so if you are behind a proxy, you have to define correctly its properties for the installer.

Because the Silverpeas build life-cycle is managed with Maven (Nexus is a repository of Maven artifacts, id est software bundles), the installation program accesses the repository through an embedded Maven library (unlike Silverpeas 5, it doesn't require Apache Maven to be installed). So, the proxy configuration can be done with the usual user Maven settings. Please edit or create the file .m2/settings.xml in the home directory of the user that is responsible of the Silverpeas installation with the following instructions:

<settings>
  ...
  <proxies>
   <proxy>
      <active>true</active>
      <protocol>http</protocol>
      <host>proxy.somewhere.com</host>
      <port>8080</port>
      <username>proxyuser</username>
      <password>somepassword</password>
      <nonProxyHosts>www.google.com|*.somewhere.com</nonProxyHosts>
    </proxy>
  </proxies>
  ...
</settings>

For a complete configuration description, see this Maven documentation page. For a complete description of each parameter see Maven Settings.xml configuration page.

Configuration

The configuration of Silverpeas is splitted into two main folders in the directory SILVERPEAS_HOME/configuration:

  • jboss with JBoss CLI scripts for configuring Wildfly in order to run Silverpeas,
  • silverpeas with Groovy and XML scripts for configuring the Silverpeas application itself.

Usually you don't have to touch the content of these folders unless for some specific settings of your own. The only file to adapt to your need is the SILVERPEAS_HOME/configuration/config.properties global configuration file that can be created from the template SILVERPEAS_HOME/configuration/sample_config.properties. All the commented parameters declared in the global configuration file are set with their default value. To set some parameters with a different value, then just uncomment them and set the correct value. This file is used by the configuration process to set up both the Wildfly server and Silverpeas.

Usually, the properties of the database to be used by Silverpeas have to be set explictly into this configuration file. So, if it doesn't already exist, creates it from the template SILVERPEAS_HOME/configuration/sample_config.properties in the same directory and set the following properties with the parameters of the database:

DB_SERVERTYPE = the database type (POSTGRESQL, MSSQL, or ORACLE)
DB_SERVER = the IP address or the DNS name of the database server
DB_USER = the login of the user with the administrative rights on the database
DB_PASSWORD = the password associated with the login above
DB_NAME = the name of the database if otherwise than Silverpeas

Beside the global configuration file, the behaviour of some of the Silverpeas functionalities are parameterized through properties files in the directory SILVERPEAS_HOME/properties that is generated during the installation process. This setting can be refined either through a Groovy script or an XML script in SILVERPEAS_HOME/configuration/silverpeas. In the case of an XML script, as in Silverpeas 5, it is usually named CustomerSettings.xml. When you name your own scripts to configure some parts of Silverpeas, don't forget the scripts are loaded by the configuration process by their name and the 00-SilverpeasSettings.xml script must be the first one to be executed.

Installing Silverpeas

The installation program is built upon the build automation system Gradle. You don't have to install it as the program will download it the first time you run it.

For an upgrade, if the use of a new Silverpeas distribution isn't required, you just have to change the version variable in the SILVERPEAS_HOME/bin/silverpeas.gradle file with the new version of Silverpeas 6.

To install or upgrade Silverpeas, that is to say to download Silverpeas, to configure it and then to deploy it into Wildfly, you just have to type, in the SILVERPEAS_HOME/bin directory:

silverpeas clean install

with:

  • clean: this command instructs to clean up any previous installation of Silverpeas; this command is required for an upgrade to force the installation process to rebuild and to configure Silverpeas. For a fresh installation, this command isn't required.
  • install: this command starts the installation process that follows then the following execution path:
    1. if the Gradle's cache is empty, the software components that made up Silverpeas are then downloaded from our Nexus Repository and pushed in the cache, otherwise the version in the cache is used,
    2. the Silverpeas Web application is built,
    3. Wildfly/JBoss is configured to run the Silverpeas Web application,
    4. Silverpeas is configured,
    5. the database used by Silverpeas is either built (in the case of a fresh installation) or updated (in the case of an upgrade).

Once the installation or upgrade process done, you will find the bundles deployed in Wildfly/JBoss in the SILVERPEAS_HOME/deployments/ directory.

If you need only to reconfigure Silverpeas, you just have to type, in the SILVERPEAS_HOME/bin directory:

silverpeas configure

To know if the process has succeeded or what failed, you can consult the build log file in the SILVERPEAS_HOME/log directory whose the name starts with build and ends with the timestamp of the process.

Launching Silverpeas

To start Silverpeas, in the SILVERPEAS_HOME/bin directory:

silverpeas start

To stop Silverpeas, in the SILVERPEAS_HOME/bin directory:

silverpeas stop

To get the status of Silverpeas, in the SILVERPEAS_HOME/bin directory:

silverpeas status

Once started, you can access Silverpeas through the following url: http://localhost:8000/silverpeas and by using the default credentials SilverAdmin/SilverAdmin.