Install on Linux Domino server
- On Linux, the installer installs the Domino REST APIs for use with an HCL Domino server.
- It's strongly recommended to use the default directories on Linux.
- Don't install using the
java
executable in/opt/hcl/domino/bin/
. If your system doesn't have Java installed, you can use thejava
executable in the/opt/hcl/domino/notes/latest/linux/jvm/bin/
directory.
To install, follow the example below:
Important
- Starting Domino REST API version 1.0.7, the installer jar filename now includes the Domino version, for example,
restapiInstall-r12.jar
. - Starting Domino REST API version 1.0.9, there will be two installer jar files:
- For Domino 14, use
restapiInstall-r14.jar
. - For Domino 12, use
restapiInstall-r12.jar
.
- For Domino 14, use
sudo java -jar restapiInstall.jar \
-d="/local/notesdata" \
-i="/local/notesdata/notes.ini" \
-r="/opt/hcl/restapi" \
-p="/opt/hcl/domino/notes/latest/linux" \
-a
All parameters
Short | Full parameter | Description |
---|---|---|
-d |
--dataDir=<dataDir> |
Directory of your HCL Notes or Domino data.Mandatory |
-i |
--ini=<notesIni> |
HCL Notes/Domino notes.ini file.Mandatory |
-r |
--restapiDir=<restapiDir> |
Directory to install the Domino REST API files into.Mandatory |
-p |
--programDir=<programDir> |
Directory where HCL Notes or Domino is installed.Mandatory |
-u |
--upgrade |
Performs an upgrade from a previous version. Upgrade will remove known program files and libraries from the Domino REST API directory and install the new version into the same directory. |
-f |
--forceUpgrade |
Performs an upgrade without regard to the previous version. If an unknown version or unexpected files are found in the Domino REST API directory, this option will delete the entire contents of the Domino REST API directory and subdirectories first before installing the new version. |
-a |
--accept |
Automatically accepts terms & conditions. |
-h |
--help |
Shows help message and exits. |
-n |
--noIniUpdates |
Installs the files, shows updated ini entries, but doesn't write them out. |
-o |
--oneTouchInstall |
If installing Domino REST API as part of a Domino One Touch Install, use this option to prevent checking for Notes / Domino directories and notes.ini. |
-y |
--dryRun |
Doesn't actually copy or alter files and settings. |
-s |
--skipDirectoryCheck |
Skips the checks if the program and data directories contain Notes or Domino. |
-V |
--version |
Prints version information and exits. |
The installer adds the restapi
task to the automatically starting tasks. If opted out using -n
, you must manually add the KeepInstallDir
key into your notes.ini
and then can subsequently issue load restapi
manually in the Domino console.
For more information, see Domino REST API task.
Verify the installation
On a new Domino REST API installation, the following actions are performed:
- Create the Domino REST API directory.
- Copy all binary files needed by Domino REST API to that directory.
- Copy
restapi
into the Domino directory. - Update the
ServerTasks
variable innotes.ini
withrestapi
. - Add a variable
KeepInstallDir
to thenotes.ini
pointing to the Domino REST API directory.
If an exiting installation is found at the location you specified as the restapi directory, the following additional actions are performed:
-
The installer checks for a file in your Domino REST API directory named
installerFiles.txt
. -
If this file exists, the installer uses this list as the list of files to remove before proceeding.
- If you specified
-u
on the command line, removal of the old files and installation of the new are performed. - If you didn't specify
-u
, you will be asked if you want to upgrade, answeringA <enter>
continues, removal of the old files and installation of the new is performed.
- If you specified
-
If this file doesn't exist, which it didn't with
Domino REST API V1
, the installer checks to see if this is V1 by checking for the existence of thekeep-core-1.9.5.jar
file in the Domino REST API directory.-
If this is V1, the installer uses the list of known V1 files before proceeding.
-
If you specified
-u
on the command line, old files are removed and installation of the new is performed. -
If you didn't specify
-u
, you'll be asked if you want to upgrade. AnsweringA <enter>
continues the removal of the old files and the installation of the new. Pressing any other key aborts. -
If this isn't V1, you will be notified that an unknown version has been found and if you want to proceed you will need to force an upgrade to continue. Forcing an upgrade removes ALL files from the Domino REST API directory and it's subdirectories, so take care that any files you may have put there will be removed. Domino REST API doesn't store any configuration or user files in the Domino REST API directory, only it's runtime and libraries.
-
If you specified
-f
on the command line, all files in the Domino REST API directory structure are removed and installation of the new version is performed. - If you didn't specify
-f
, you will be asked if you want to force an upgrade, answeringA <enter>
continues, all files in the REST API directory structure are remove and installation of the new is performed. Pressing any other key aborts.
-
Update Environment
-
The
restapi
task requires 2 environment variables to be set before launching Domino. -
Add the following directories to your PATH if not already there:
- Your notesdata directory
- The Domino binary directory
- The res/C directory inside your Domino binary directory.
For example:
PATH=/local/notesdata:/opt/hcl/domino/notes/latest/linux:/opt/hcl/domino/notes/latest/linux/res/C:$PATH
-
Add the following to your LD_LIBRARY_PATH environment variable if not already there:
- your Domino binary directory.
- The jvm/bin directory inside your Domino binary directory.
- The jvm/bin/classic directory inside your Domino binary directory.
For example:
LD_LIBRARY_PATH=/opt/hcl/domino/notes/latest/linux:/opt/hcl/domino/notes/latest/linux/jvm/bin:/opt/hcl/domino/notes/latest/linux/jvm/bin/classic:$LD_LIBRARY_PATH
File ownership and access rights
On Linux, you need to carefully check that your file and directory ownership and access rights are set correctly. The strongly recommended conventions are:
- User to run the Domino server:
notes
. - Domino installed in
/opt/hcl/domino
-> owned byroot
. - Domino REST API installed in
/opt/hcl/restapi
-> owned byroot
. - Domino data directory
/local/notesdata
-> owned bynotes
. - Access for files and directories in
/opt
set to755
. - Access for directories in
/local/notesdata
set to770
. - Access for files in
/local/notesdata
set to660
. - NOTE: directories need the execute flag (1), otherwise they can't be accessed, so access for a directory must be an odd number always.
- Don't set access anywhere to 777.
Check that the REST API is running
The installation, unless told otherwise, added restapi
to the servertasks
in the notes.ini
.
You can quickly check on the Domino console if the REST API is running by using sh ta
. In case restapi
isn't listed as running task, load it using load restapi
. The Domino console will output a message on the success or failure to load.