
Cyllo, your gateway to streamlined business excellence!
By uniting advanced ERP capabilities with cutting-edge AI and limitless integrations, we’ve built more than a platform—we’ve built your ultimate competitive advantage. Prepare to experience a smoother, smarter way of working where complex tasks become effortless. Your journey to peak efficiency starts now. Let’s transform your operations together. Welcome aboard the future of business management!
This article provides a detailed guide on how to install cyllo on an Ubuntu 20.04 or newer server.
ssh username@IP_Address -p Port_number Connect via SSH to your server.
sudo apt-get update
sudo apt-get upgrade
Make sure the system is up to date.
sudo apt-get install openssh-server fail2ban
Implementing Fail2ban to prevent SSH attacks.
Install the Python packages needed for cyllo and set up pip3.
Run the following command to install pip3:
sudo apt-get install -y python3-pipUse the instructions provided to install web dependencies and other necessary packages. Check that all packages are installed correctly and without errors.
sudo apt-get install python-dev python3-dev libxml2-dev libxslt1-dev zlib1g-dev libsasl2-dev libldap2-dev build-essential libssl-dev libffi-dev libmysqlclient-dev libjpeg-dev libpq-dev libjpeg8-dev liblcms2-dev libblas-dev libatlas-base-dev
sudo apt-get install -y npm
sudo ln -s /usr/bin/nodejs /usr/bin/node
sudo npm install -g less less-plugin-clean-css
sudo apt-get install -y node-less
As mentioned earlier, PostgreSQL is the database used by cyllo.
sudo apt-get install postgresqlSet up and install the PostgreSQL database.
A user and password are required for the configuration file.
PostgreSQL uses a separate system user for performing tasks. To switch to this user, run sudo su – postgres. Then, create a database user for cyllo.
sudo su - postgres
createuser --createdb --username postgres --no-createrole --no-superuser --pwprompt cyllo
Next, enter PostgreSQL to grant superuser access.
psql
ALTER USER cyllo WITH SUPERUSER;
By executing the above command, the user is granted superuser privileges.
After that, log out of Postgres-user and PSQL.
\q
exit
sudo adduser --system --home=/opt/cyllo --group cylloIt is necessary for security reasons and to run cyllo tasks.
Access to all of cyllo’s files and directories will be limited to the user.
The source file for cyllo needs to be uploaded to the server.
First, install git on the server.
sudo apt-get install gitOnce the system user is changed to cyllo, the file will be placed in the specified directory.
sudo su - cyllo -s /bin/bash
The dot (.) at the end of the command ensures that the files are cloned into the current user’s home directory, which is /opt/cyllo. This directory was set during the user creation process.
The following command will clone the source directory.
git clone https://www.github.com/cyllo/cyllo --depth 1 --branch 17.0 --single-branch After running this, you should log out of the user before proceeding with the installation.
exitsudo pip3 install -r /opt/cyllo/requirements.txtWkhtmltopdf is needed to generate PDF reports from cyllo. It allows the conversion of HTML data to PDF format. Additionally, the report engine converts Qweb template reports to HTML, and Wkhtmltopdf then creates the PDF report.
sudo wget https://github.com/wkhtmltopdf/wkhtmltopdf/releases/download/0.12.5/wkhtmltox_0.12.5-1.bionic_amd64.deb
sudo dpkg -i wkhtmltox_0.12.5-1.bionic_amd64.deb
sudo apt install -f
Cyllo requires certain configuration details to function properly, such as the database user, password, and locations of add-ons. These details are stored in the configuration file. Therefore, the first step is to create a configuration file for cyllo. You can find an example configuration file in the cyllo folder and copy it to the desired location. The configuration file should be copied to /etc.
sudo cp /opt/cyllo/debian/cyllo.conf /etc/cyllo.conf
sudo nano /etc/cyllo.conf
Update the conf file as shown in the code below.
[options]
admin_passwd = admin
db_host = False
db_port = False
db_user = cyllo
db_password = your_password_of_db_user
addons_path = /opt/cyllo/addons, /opt/cyllo/cyllo_addons
server_wide_modules = web, cyllo_web
logfile = /var/log/cyllo/cyllo.log
Before proceeding with the operations, the following parameters must be configured.
The master password for cyllo is admin_passwd, which is used for creating, deleting, duplicating, and performing other database-related operations. The database host, or db_host, must also be set.
admin_passwd: This is the password that allows database operations
db_port: The port used by the database.
db_user: The name of the database user.
db_password: The password used when the database user was created.
addons_path: The path to the directories that contain the cyllo add-on directories.
Multiple directories can be listed, separated by commas.
Logfile: The path to the log file.
For example,
addons_path = /opt/cyllo/addons, /opt/cyllo/cyllo_addons.
sudo chown cyllo: /etc/cyllo.conf
sudo chmod 640 /etc/cyllo.conf
Also, create a ‘cyllo’ log directory and set the appropriate permissions to help identify cyllo-related issues.
sudo mkdir /var/log/cyllo
sudo chown cyllo:root /var/log/cyllo
A service is needed to run Cyllo. Let’s create a service file named ‘cyllo.service’ in the /etc/systemd/system directory.
sudo nano /etc/systemd/system/cyllo.service
Add the following details to the newly created service file.
[Unit]
Description=cyllo
Documentation=http://www.cyllo.com
[Service]
# Ubuntu/Debian convention:
Type=simple
User=cyllo
ExecStart=/opt/cyllo/cyllo-bin -c /etc/cyllo.conf
[Install]
WantedBy=default.target
Finally, set the permissions for the root user on this service file.
sudo chmod 755 /etc/systemd/system/cyllo.service
sudo chown root: /etc/systemd/system/cyllo.service
sudo systemctl start cyllo.serviceUse the above command to start the Cyllo instance. Then, use the following command to check the current status of the service. If the installation was successful, it will show as active.
sudo systemctl status cyllo.service"http://<your_domain_or_IP_address>:8069"Check cyllo logs:
If you are facing any issues during the installation or for any other reason, use the following command to view the logs of the Cyllo platform you have configured.
You can get real-time logs in the terminal with this command.
sudo tail -f /var/log/cyllo/cyllo.log
Finally, use the following command to ensure that the Cyllo service starts automatically after the server restarts.
sudo systemctl enable cyllo.serviceUse the following command to restart the Cyllo service if you have made changes to the add-ons so that your instance reflects the updates.
sudo systemctl restart cyllo.service
After successfully installing Cyllo, you can begin your career in Cyllo development and learn more about it by using our Cyllo Development Tutorial App, which you can access from the Cyllo Apps Page.