Installation on Linux and Unix
When installing SanteDB iCDR server on Linux or Unix based environment you should use the tarballs for the latest version of the SanteDB iCDR server. Each solution within SanteDB iCDR Server has its own distribution which can be downloaded for their own source repository.
The installation process for SanteDB on Linux is the same process as installation on Windows::
- 1.Install the software
- Copy software program files and pre-requisites
- Initiate the configuration process
- 2.Configuration of the software
- Customizing the behavior of the installed plugins
- Entering implementation specific details about the deployment
- 3.Running/Initializing the Server
The tarballs provided have been written for and test on Debian based distributions, manual installation for non-Debian based distributions is required.
When running SanteDB iCDR server on Unix based operating systems you will require, at minimum:
- One of the following Unix operating systems:
- MacOS X 10.9 on M1 or x86 (manual installation)
- Ubuntu 16.04 or later (install script)
- Debian 9 or later (install script)
- CentOS or RHEL 6 or better (manual installation)
- 2 Core CPU (4 to 8 Cores recommended)
- 2 GB RAM (8 or 16 GB of RAM recommended)
- 300 MB of disk space (1 GB recommended)
Users should be familiar with basic Unix concepts such as:
- Un-taring archive files
- Basic familiarity with Unix commands
To install the SanteDB iCDR 2.1.140 or higher via the installation script provided, you should first extract the tarball contents:
$ tar -xjvf santedb-server-2.1.140.tar.bz2
This will extract the software to the
./santedb-server-2.1.140directory. You can enter that directory and run the
$ cd santedb-server-2.1.140/
santedb-server-2.1.140 $ chmod +x install.sh
santedb-server-2.1.140 $ ./install.sh
If you are not running the script as root, the installer will prompt if you would like it to use SUDO. The script will then detect pre-requisites for mono and postgresql. The install script will install mono for you.
Finally, you'll be prompted for an installation target, the default location is
/opt/santesuite/santedb/server/, you can accept the default or change the location of installation to suit your policy.
After installation is complete, the default SanteDB publisher certificates will be registered with the Mono trust store and you'll be provided the option to setup SanteDB as a daemon.
When installing the SanteDB iCDR server manually, administrators should ensure that the pre-requisites for SanteDB are installed on their preferred Unix environment:
Once installed, users should create their target installation directory (this tutorial will use
/opt/santedb, and should unzip the tarball or zip file to that location.
tar xjvf santedb-server-2.1.140.tar.bz2
mkdir -p /opt/santedb
mv santedb-server-2.1.140 /opt/santedb
You then need to install the SanteDB publisher certificates into the Mono certificate store:
sudo mono SanteDB.exe --install-certs
Finally, you can run the configuration tool in your installation directory with
sudo mono ConfigTool.exe
You can register SanteDB as a daemon on your distribution of Linux by creating a service definition file. This is done by creating a new file at
/etc/systemd/system/santedb.serviceand using the contents:
Description=SanteDB iCDR Server
ExecStart=/usr/bin/mono-service -d:$INSTALL_ROOT /opt/santesuite/santedb/server/SanteDB.exe --console
ExecStop=kill \`cat /tmp/SanteDB.exe.lock\`
After this time you can run
systemctl reload-daemonsto load your service definition.
Like the Windows installation, the SanteDB, the SanteDB iCDR on Linux needs to be initialized, unlike windows this requires manual stop/start of the service.
If you've installed SanteDB as a daemon the command to stop or start the daemon is:
systemctl stop santedb
If you are running SanteDB on a console, you can run:
mono /opt/santesuite/santedb/server/SanteDB.exe --console
Once started you can validate connectivity to the SanteDB iCDR server running the SanteDB Administration Console. The Administration console is executed using:
Once the login prompt is available you can login with
SanteDB Administration & Security Console v126.96.36.199 (Queenston)
Copyright (C) 2015 - 2020, SanteSuite Community Partners (see NOTICES)
Access denied, authentication required.
* http://localhost:8080/ami -> v.188.8.131.52 (Queenston)
If the option to install the SanteDB iCDR as a Linux daemon was selected during install, then the service can be controlled with
sudo systemctl start santedb
sudo systemctl status santedb
Stopping the service is done with the same command:
sudo systemctl stop santedb
sudo systemctl status santedb
The service can be enabled on startup using:
sudo systemctl enable santedb