Nuxeo Platform
Learn how to use Nuxeo Platform to store data on the ScPrime distributed datacenter using the XNS Relayer
Overview
Nuxeo Platform is a set of server and client-side software artifacts and tools that allow you to build, operate and maintain advanced content management applications: core business applications with strong DAM or Case Management flavors, vertical document management systems, hyperscale archival repositories and more.
Read this guide for how to configure Nuxeo Platform to store data on XNS.
Prerequisites
- Install and patch Linux and install Docker. Ubuntu and Docker were used to create this guide, however in terms of software, the only requirement to run the Nuxeo Docker image is Docker itself. In addition, Nuxeo Platform can be installed directly on all major operating systems such as Windows (client or server), Linux distributions, macOS, etc.
- Install and configure ScPrime’s XNS Relayer v2.1.0 or later – follow the guide for your OS: Linux | Windows
- Configure the XNS Relayer’s “Endpoint Access Key (Username)” and “Endpoint Secret Key (Password)”, create a bucket called “nuxeo”, and use “No SSL” under “Select Endpoint Certificate Type”.
- If your company is not already a Nuxeo client, you must register for a Nuxeo 30-day trial account by following the instructions on their website: Register for Nuxeo Online Services
Considerations
- This guide includes some of the basic steps for getting the Nuxeo Platform up and running quickly using Nuxeo’s Docker image, however it is not intended as a replacement for Nuxeo’s documentation. For complete instructions including ZIP distribution and installation, refer to Nuxeo’s website: Nuxeo Server Installation
- Nuxeo’s website has a warning stating that private access to the Docker registry is required and to request it by opening a ticket or by contacting Sales. After contacting Sales, this turned out to be unnecessary, at least for conducting a trial.
- According to Nuxeo Sales, Nuxeo is a platform product intended for medium to large enterprises. It is not typically cost-effective for small teams.
- Optionally, consider configuring Docker to be managed with a non-root user: Linux Post-installation Steps
- Getting Nuxeo to work with the XNS Relayer with “SSL” enabled requires additional Nuxeo configuration not covered in this guide.
Application Version Used in Guide
Nuxeo Platform LTS 2021 (Docker Image)
Guide Revision Date
2023-04-23
Setup Guide
Step 1: Run the Latest Nuxeo Docker Image
From the Ubuntu server, run the latest Nuxeo Docker image and name the container “nuxeo1”. Use “-d” option to run as a background process (detached):
docker run -d –name nuxeo1 nuxeo:latest
If the nuxeo1 container already exists and just needs to be restarted (e.g. after a system reboot):
docker start nuxeo1
Check if the image is running as expected:
docker ps
Step 2: Register your Nuxeo Instance
The registration steps are listed below, however if troubleshooting is needed refer to the Nuxeo guide: Registering Your Nuxeo Instance)
Login to your Nuxeo Online Services account (https://auth.nuxeo.com/):

Choose the Nuxeo Online Services tile:

Create a token by selecting My Tokens, then Create Token:

The token will be displayed one time. Save the token to use later in this guide. Tokens are used in place of passwords. They can be revoked, or new ones can be created at any time.
Choose My Studio Projects from the menu:

Click Create new trial Studio Project:

Enter a Project Name, make sure the Platform is selected, then click Submit:

Using the command below, register your Nuxeo instance (replace the options as described, removing the brackets [ ] ):
YourEmailAddress: The email address you used to login to your Nuxeo Online Services account
ProjectName: The Project Name created above
Description: For the Description, simply enter the ProjectName again
YourToken: The Token created above
docker exec nuxeo1 nuxeoctl register [YourEmailAddress] [ProjectName] dev [Description] [YourToken]
The command will look similar to this:
docker exec nuxeo1 nuxeoctl register joeuser@gmail.com nuxeotestproject dev nuxeotestproject a7f2b2d03c25c2b6331f6ced8a446e553c5b09dc8ede54ddcc7f6495e3gh3adf
Step 3: Edit the Nuxeo Configuration File
Stop the Nuxeo Server:
docker exec nuxeo1 nuxeoctl stop
Edit the Nuxeo configuration file /etc/nuxeo/nuxeo.conf to add S3-compatible settings that point to the XNS Relayer for storage. The file configuration file is stored inside the Docker container. There are several ways to edit the file. Familiarity with Docker is helpful here. Following is one way to edit the file:
Find the Docker Container ID:
sudo docker container ls
Copy the file outside of Docker for editing:
sudo docker cp YourContainerID:/etc/nuxeo/nuxeo.conf ~/nuxeo.conf
Edit the file:
sudo nano ~/nuxeo.conf
Add rows similar to the following (use your own settings), near the end of the file as shown below. Create the bucket ahead of time in the XNS Relayer File Manager. Bucket name “nuxeo” is used in this example:
nuxeo.s3storage.endpoint=http://192.168.1.50:9000
#nuxeo.s3storage.pathstyleaccess=true (this line isn’t needed and is commented out)
nuxeo.aws.accessKeyId=xnsUserName
nuxeo.aws.secretKey=xnsPassword
#nuxeo.aws.region= (this line isn’t needed and is commented out)
nuxeo.s3storage.bucket=nuxeo

Save the nuxeo.conf file, then copy it back into the Docker Container:
sudo docker cp ~/nuxeo.conf YourContainerID:/etc/nuxeo/nuxeo.conf
Change the nuxeo.conf owner back to the default “nuxeo” user within the container, otherwise the Nuxeo service can’t read it:
docker exec -it –user root YourContainerID /bin/bash
cd /etc/nuxeo
chown nuxeo nuxeo.conf
exit
Step 4: Install Nuxeo Packages
Various Nuxeo Packages need to be installed to setup and use Nuxeo with S3 compatible storage in order to use XNS storage:
Ensure the Nuxeo Server is stopped (packages cannot be installed with the Server running):
docker exec nuxeo1 nuxeoctl stop
Install the Nuxeo packages. Some packages have dependencies that will be automatically installed and may take some time. Some packages are from the Nuxeo Marketplace and will fail to install if the server is not registered using the steps earlier in this guide:
docker exec nuxeo1 nuxeoctl mp-install nuxeo-web-ui
docker exec nuxeo1 nuxeoctl mp-install amazon-s3-online-storage
docker exec nuxeo1 nuxeoctl mp-install nuxeo-platform-getting-started (optional – installs sample files)
After the packages are installed, start the Nuxeo service:
docker exec nuxeo1 nuxeoctl start
Make sure there are no Unstarted components. If there are, re-check the nuxeo.conf file for configuration issues. Success should look something like the following:

Step 5: Launch the Nuxeo Web UI
Check the Docker network configuration to find out exactly what IP address to use to get the Web UI:
docker container inspect nuxeo1
Nuxeo Server listens on port 8080 by default. Use a web browser to get to the Web UI. By default, both the Username and Password are “Administrator”. The login screen will look different depending on whether the optional package was installed or not:

Step 6: Upload Files
Navigate to an existing workspace (or create a new one), and upload a file by clicking the plus symbol (+):

Select the Import tab, then click the text Drag and drop, or click to select files to upload, select a file to upload, then click CREATE:

A preview of the file will be displayed:

Step 7: Verify File Storage
Verify the files are being written to the expected XNS Relayer storage bucket:

Note: 192.168.1.50:9000 is only an example — use the local network address of your own XNS Relayer. Port 9000 is the S3 API on a fresh install (plain HTTP, no certificate). Once you add an HTTPS certificate to your Relayer, switch to https:// and port 9443.

2023 SCP Corp