Platform configuration

Changing the configuration

There are two ways to customize the platform’s configuration:

  • Command-line arguments (preferred for development)
  • Configuration file (preferred for production)

Command-line arguments

Any configuration parameter can be specified directly as a command-line argument when running the platform.

Using Docker

Configuration parameters need to be specified after the image. E.g. to specify server.exposed.host:

docker run -d --name carbonldp-platform -p 8083:8083 \
    --volume /your/directory/path/carbonldp:/opt/carbonldp/shared \
    carbonldp/carbonldp-platform:5.0.0 \
        --server.exposed.host="8083"

Note: The parameters need to take the form: --key="value"

Executing the jar

Configuration parameters need to be specified after specifying the jar. E.g. to specify server.exposed.host:

java \
    -jar carbonldp-platform.jar \
    --server.exposed.host="8083"

Note: The parameters need to take the form: --key="value"

Configuration file

The file config.properties can be provided to the platform so it loads its configuration from it. The way to provide this file changes depending on how you are running the platform.

Using Docker

The platform is configured to read the configuration file on the path: /opt/carbonldp/config.properties.

To provide it, you just need to map that path to a local one:

docker run -d --name carbonldp-platform -p 8083:8083 \
    --volume /your/directory/path/carbonldp:/opt/carbonldp/shared \
    --volume /your/directory/path/carbonldp/config.properties:/opt/carbonldp/config.properties \
    carbonldp/carbonldp-platform:5.0.0

Executing the jar

If you are running the platform directly from the jar, it will look for the configuration file on the same directory as the jar.

E.g. if the jar is in /your/directory/path/carbonldp-platform.jar, the platform will look for: /your/directory/path/config.properties

Configuration reference

Parameter Type Description
server.exposed.ssl boolean Whether the platform will be exposed (to the public) through https or not
server.exposed.host String The host where the platform will be exposed (to the public)
server.exposed.port Integer The port where the platform will be exposed (to the public)
server.port Integer The port where the platform is going to be listening on the host machine
carbonldp.contact.first-name String User’s contact first name. Required when using the Standard version of the platform
carbonldp.contact.last-name String User’s contact last name. Required when using the Standard version of the platform
carbonldp.contact.email String User’s contact email. Required when using the Standard version of the platform
carbonldp.contact.company String User’s company name
carbonldp.license String Can be one of the following:

  • Path of the license file (e.g. /opt/carbonldp/shared/license.key)
  • License key string. Content between
    -----BEGIN CARBON LDP LICENSE-----

    and

    -----END CARBON LDP LICENSE-----)
carbonldp.repository.type Enum Type of repository to use. Accepted values are:

  • local – To use a native file-based repository
  • remote – To use an RDF4J compatible remote repository (e.g. GraphDB)
  • stardog – to use a Stardog repository
carbonldp.repository.directory String Directory where the file-based repository will be stored.

Only needed if carbonldp.repository.type is set to local.

carbonldp.repository.url String URL of the repository to use

Only needed if carbonldp.repository.type is set to remote or stardog.

carbonldp.repository.username String Username to use for repositories that require authentication

Only needed if carbonldp.repository.type is set to remote or stardog.

carbonldp.repository.password String Password to use for repositories that require authentication

Only needed if carbonldp.repository.type is set to remote or stardog

carbonldp.repository.id String ID of the repository to connect to

Only needed if carbonldp.repository.type is set to remote or stardog

carbonldp.zoo-keeper.type Enum Type of ZooKeeper instance to use. Accepted values are:

  • embedded – To use an embedded instance
  • remote – To use a remote instance
carbonldp.zoo-keeper.host String Host of the remote ZooKeeper instance

Only needed if carbonldp.zoo-keeper.type is set to remote

carbonldp.zoo-keeper.port Integer Port of the ZooKeeper instance

If carbonldp.zoo-keeper.type is set to embedded this port will be the one where the embedded instance will be listening

carbonldp.messaging.broker.host String Host of the relay messaging broker
carbonldp.messaging.broker.port Integer Port of the relay messaging broker