Installation
Note
Please check the software requirements, before installing OC.
Debian/Ubuntu (example for 24.04 LTS)
Prepare environment
1. Update:
Update your system, download and install required packages.
1apt update
2apt dist-upgrade
3apt install unzip mariadb-server mariadb-client openjdk-17-jdk nginx
2. Install MongoDB:
Install Application
Download and unzip application, and create a link for it.
1wget --content-disposition "https://packagecloud.io/becon/opencelium/packages/anyfile/oc_latest.zip/download?distro_version_id=230" -P /opt/opencelium/
2unzip -o -d /opt/opencelium/ /opt/opencelium/oc_latest.zip
3rm /opt/opencelium/oc_latest.zip
4ln -s /opt/opencelium/scripts/oc_service.sh /usr/bin/oc
Configuration
1. MariaDB:
Create database and mysql user for OpenCelium, enable mysql service and secure mysql installation.
Note
Please change the password (secret1234) in the following command line!
1mysql -u root -e "source /opt/opencelium/src/backend/database/oc_data.sql; GRANT ALL PRIVILEGES ON opencelium.* TO 'opencelium'@'localhost' IDENTIFIED BY 'secret1234'; FLUSH PRIVILEGES;"
2systemctl enable mariadb
3mysql_secure_installation
2. MongoDB:
Start and enable mongod service.
1systemctl start mongod
2systemctl enable mongod
3. Nginx:
Copy the configuration file for OpenCelium.
1cp /opt/opencelium/conf/nginx.conf /etc/nginx/conf.d/oc.conf
Note
If you like to use SSL, copy the SSL-configuration file for OpenCelium:
1cp /opt/opencelium/conf/nginx-ssl.conf /etc/nginx/conf.d/oc.conf
and change the certificates within the config (/etc/nginx/conf.d/oc.conf), with your own:
1ssl_certificate /etc/ssl/certs/opencelium.pem;
2ssl_certificate_key /etc/ssl/private/opencelium.key;
Reload config and enable nginx.
1systemctl start nginx
2systemctl enable nginx
4. OpenCelium:
Create and adjust configuration.
1cp /opt/opencelium/src/backend/src/main/resources/application_default.yml /opt/opencelium/src/backend/src/main/resources/application.yml
Note
1openssl pkcs12 -export -out /opt/opencelium/src/backend/src/main/resources/opencelium.p12 -in /etc/ssl/certs/opencelium.pem -inkey /etc/ssl/private/opencelium.key
Finally start OpenCelium backend.
1ln -s /opt/opencelium/conf/opencelium.service /etc/systemd/system/opencelium.service
2systemctl daemon-reload
3systemctl enable opencelium
4systemctl start opencelium
Note
1journalctl -xe -u opencelium -f
SUSE Linux Enterprise Server (example for SLES 15 SP5)
Prepare environment
1. Update:
Update your system, download and install required packages.
1zypper install unzip insserv mariadb mariadb-client java-17-openjdk nginx
2. Install MongoDB:
Install Application
Download and unzip application, and create a link for it.
1wget --content-disposition "https://packagecloud.io/becon/opencelium/packages/anyfile/oc_latest.zip/download?distro_version_id=230" -P /opt/opencelium/
2unzip -o -d /opt/opencelium/ /opt/opencelium/oc_latest.zip
3rm /opt/opencelium/oc_latest.zip
4ln -s /opt/opencelium/scripts/oc_service.sh /usr/bin/oc
Configuration
1. MariaDB:
Create database and mysql user for OpenCelium, enable mysql service and secure mysql installation.
Note
Please change the password (secret1234) in the following command line!
1rcmysql start
2mysql -u root -e "source /opt/opencelium/src/backend/database/oc_data.sql; GRANT ALL PRIVILEGES ON opencelium.* TO 'opencelium'@'localhost' IDENTIFIED BY 'secret1234'; FLUSH PRIVILEGES;"
3systemctl enable mariadb
4mysql_secure_installation
2. MongoDB:
Start and enable mongod service.
1systemctl start mongod
2systemctl enable mongod
3. Nginx:
Copy the configuration file for OpenCelium.
1cp /opt/opencelium/conf/nginx.conf /etc/nginx/conf.d/oc.conf
Note
If you like to use SSL, copy the SSL-configuration file for OpenCelium:
1cp /opt/opencelium/conf/nginx-ssl.conf /etc/nginx/conf.d/oc.conf
and change the certificates within the config (/etc/nginx/conf.d/oc.conf), with your own:
1ssl_certificate /etc/ssl/certs/opencelium.pem;
2ssl_certificate_key /etc/ssl/private/opencelium.key;
Reload config and enable nginx.
1systemctl restart nginx
2systemctl enable nginx
4. OpenCelium:
Create and adjust configuration.
1cp /opt/opencelium/src/backend/src/main/resources/application_default.yml /opt/opencelium/src/backend/src/main/resources/application.yml
Note
1openssl pkcs12 -export -out /opt/opencelium/src/backend/src/main/resources/opencelium.p12 -in /etc/pki/tls/certs/opencelium.pem -inkey /etc/pki/tls//private/opencelium.key
Finally start OpenCelium backend.
1ln -s /opt/opencelium/conf/opencelium.service /etc/systemd/system/opencelium.service
2systemctl daemon-reload
3systemctl enable opencelium
4systemctl start opencelium
Note
1journalctl -xe -u opencelium -f
Red Hat Enterprise Linux (example for Red Hat 9.2)
Prepare environment
1. Update:
Update your system, download and install required packages.
1yum update
2yum install unzip mariadb-server java-17-openjdk nginx
2. Install MongoDB:
Install Application
Download and unzip application, and create a link for it.
1wget --content-disposition "https://packagecloud.io/becon/opencelium/packages/anyfile/oc_latest.zip/download?distro_version_id=230" -P /opt/opencelium/
2unzip -o -d /opt/opencelium/ /opt/opencelium/oc_latest.zip
3rm /opt/opencelium/oc_latest.zip
4ln -s /opt/opencelium/scripts/oc_service.sh /usr/bin/oc
Configuration
1. MariaDB:
Create database and mysql user for OpenCelium, enable mysql service and secure mysql installation.
Note
Please change the password (secret1234) in the following command line!
1systemctl start mariadb
2mysql -u root -e "source /opt/opencelium/src/backend/database/oc_data.sql; GRANT ALL PRIVILEGES ON opencelium.* TO 'opencelium'@'localhost' IDENTIFIED BY 'secret1234'; FLUSH PRIVILEGES;"
3systemctl enable mariadb
4mysql_secure_installation
2. MongoDB:
Start and enable mongod service.
1systemctl restart mongod
2systemctl enable mongod
3. Nginx:
Copy the configuration file for OpenCelium.
1cp /opt/opencelium/conf/nginx.conf /etc/nginx/conf.d/oc.conf
Note
If you like to use SSL, copy the SSL-configuration file for OpenCelium and create a link to the key-folder:
1cp /opt/opencelium/conf/nginx-ssl.conf /etc/nginx/conf.d/oc.conf
2ln -s /etc/pki/tls/private/ /etc/ssl/private
Change the certificates within the config (/etc/nginx/conf.d/oc.conf), with your own:
1ssl_certificate /etc/ssl/certs/opencelium.pem;
2ssl_certificate_key /etc/ssl/private/opencelium.key;
Reload config and enable nginx.
1systemctl restart nginx
2systemctl enable nginx
4. OpenCelium:
Create and adjust configuration.
1cp /opt/opencelium/src/backend/src/main/resources/application_default.yml /opt/opencelium/src/backend/src/main/resources/application.yml
Note
1openssl pkcs12 -export -out /opt/opencelium/src/backend/src/main/resources/opencelium.p12 -in /etc/pki/tls/certs/opencelium.pem -inkey /etc/pki/tls//private/opencelium.key
Finally start OpenCelium backend.
1ln -s /opt/opencelium/conf/opencelium.service /etc/systemd/system/opencelium.service
2systemctl daemon-reload
3systemctl enable opencelium
4systemctl start opencelium
Note
1journalctl -xe -u opencelium -f
Ansible
Note
Only available for Ubuntu systems (tested on 22.04 LTS)!
Prepare environment:
Install Ansible:
1add-apt-repository ppa:ansible/ansible
2apt install ansible
Get oc playbook:
1mkdir /etc/ansible
2git clone https://github.com/opencelium/ansible.git /etc/ansible/
Download application files
1wget --content-disposition "https://packagecloud.io/becon/opencelium/packages/anyfile/oc_latest.zip/download?distro_version_id=230" -P /etc/ansible/opencelium/files/
Run playbook
1ansible-playbook --connection=local /etc/ansible/install_oc.yml
Docker Compose
Warning
We currently do not support Docker environments in productive use. We recommend using it for use in a test phase!
Note
You need at least 4 GB of RAM to run the containers. We recommend 8GB for a better performance.
Docker is a container-based software framework for automating deployment of applications. Compose is a tool for defining and running multi-container Docker applications.
This repo is meant to be the starting point for somebody who likes to use dockerized multi-container OpenCelium in production. The OpenCelium Docker image uses the stable branch of OpenCelium’s Git repo.
The Docker images are hosted on Dockerhub.
Install Docker Environment:
Install Docker:
Use default Docker installation guide.
Getting started with opencelium-docker-compose:
1git clone https://github.com/opencelium/opencelium-docker.git
2cd opencelium-docker
Note
We recommend to use always the latest tag version.
Start OpenCelium using DockerHub images
1docker-compose up -d
DEB package for Ubuntu 22.04 LTS
Prepare environment:
Update Ubuntu system:
1apt update
2apt install curl gnupg
Install java:
1apt install openjdk-17-jdk
Install neo4j:
1wget -O - https://debian.neo4j.com/neotechnology.gpg.key | sudo apt-key add -
2echo 'deb https://debian.neo4j.com stable latest' | sudo tee -a /etc/apt/sources.list.d/neo4j.list
3apt update
4apt install neo4j=1:5.7.0
5/usr/bin/neo4j-admin dbms set-initial-password secret1234
Note
Change password (secret1234) if you want.
Install Application:
Install deb package for OpenCelium:
1curl -s https://packagecloud.io/install/repositories/becon/opencelium/script.deb.sh | sudo bash
2sed -i 's!deb .*!deb [signed-by=/etc/apt/keyrings/becon_opencelium-archive-keyring.gpg] https://packagecloud.io/becon/opencelium/ubuntu jammy main!' /etc/apt/sources.list.d/becon_opencelium.list
3apt update
4apt install opencelium
Configure environment:
Secure MySql and set root password (required for new MySql installations):
1mysql_secure_installation
Note
Sometimes setting password doesn’t work prperly by mysql_secure_installation. Please check with this command:
1mysql -u root
If this works (without your password), please set your password again with this command:
1mysql -u root -e "ALTER USER 'root'@'localhost' IDENTIFIED BY 'root';"
Change password (root) if you want.
Modify application.yml file for backend:
1cd /opt/opencelium/src/backend/src/main/resources
Note
Make changes inside the file application.yml! Change neo4j and mysql database password.
Restart backend:
1oc restart_backend
Welcome to OC:
1Visit opencelium http://SERVERIP
RPM package for SUSE Linux Enterprise Server 15 SP5
Prepare environment:
Install java:
1zypper install java-17-openjdk
Install neo4j:
1zypper addrepo --refresh https://yum.neo4j.org/stable/5 neo4j-repository
2zypper refresh
3zypper install neo4j-5.7.0
4/usr/bin/neo4j-admin dbms set-initial-password secret1234
5zypper install insserv
Note
Change password (secret1234) if you want.
Install Application:
Install rpm package for OpenCelium:
1curl -s https://packagecloud.io/install/repositories/becon/opencelium/script.rpm.sh | sudo bash
2sed -i 's!baseurl=.*!baseurl=https://packagecloud.io/becon/opencelium/sles/15.5/x86_64!' /etc/yum.repos.d/becon_opencelium.repo
3zypper install OpenCelium
Configure environment:
Secure MySql and set root password (required for new MySql installations):
1mysql_secure_installation
Note
Sometimes setting password doesn’t work prperly by mysql_secure_installation. Please check with this command:
1mysql -u root
If this works (without your password), please set your password again with this command:
1mysql -u root -e "ALTER USER 'root'@'localhost' IDENTIFIED BY 'root';"
Change password (root) if you want.
Modify application.yml file for backend:
1cd /opt/opencelium/src/backend/src/main/resources
Note
Make changes inside the file application.yml! Change neo4j and mysql database password.
Restart backend:
1oc restart_backend
Welcome to OC:
1Visit opencelium http://SERVERIP
RPM package for RedHat 9.2
Prepare environment:
Update RedHat system:
1yum update
2yum install pygpgme yum-utils
Note
You may need to install the EPEL repository for your system to install these packages. If you do not install pygpgme, GPG verification will not work. In this case, you can install OpenCelium without GPG verification (see note at installation section).
Install java:
1yum install java-17-openjdk
Install neo4j:
1rpm --import https://debian.neo4j.com/neotechnology.gpg.key
2cat <<EOF> /etc/yum.repos.d/neo4j.repo
3[neo4j]
4name=Neo4j RPM Repository
5baseurl=https://yum.neo4j.com/stable/5
6enabled=1
7gpgcheck=1
8EOF
9yum install neo4j-5.7.0-1
10/usr/bin/neo4j-admin dbms set-initial-password secret1234
Note
Change password (secret1234) if you want.
Install Application (pygpgme required):
Install rpm package for OpenCelium:
1curl -s https://packagecloud.io/install/repositories/becon/opencelium/script.rpm.sh | sudo bash
2sed -i 's!baseurl=.*!baseurl=https://packagecloud.io/becon/opencelium/fedora/40/x86_64!' /etc/yum.repos.d/becon_opencelium.repo
3yum install OpenCelium
Note
Install Application without pygpgme:
Install rpm package for OpenCelium:
1cat << EOF > /etc/yum.repos.d/becon_opencelium.repo
2[becon_opencelium]
3name=becon_opencelium
4baseurl=https://packagecloud.io/becon/opencelium/fedora/40/x86_64
5repo_gpgcheck=0
6gpgcheck=0
7enabled=1
8sslverify=1
9sslcacert=/etc/pki/tls/certs/ca-bundle.crt
10metadata_expire=300
11EOF
12yum install OpenCelium
Configure environment:
Secure MySql and set root password (required for new MySql installations):
1mysql_secure_installation
Note
Sometimes setting password doesn’t work prperly by mysql_secure_installation. Please check with this command:
1mysql -u root
If this works (without your password), please set your password again with this command:
1mysql -u root -e "ALTER USER 'root'@'localhost' IDENTIFIED BY 'root';"
Change password (root) if you want.
Modify application.yml file for backend:
1cd /opt/opencelium/src/backend/src/main/resources
Note
Make changes inside the file application.yml! Change neo4j and mysql database password.
Restart backend:
1oc restart_backend
Welcome to OC:
1Visit opencelium http://SERVERIP