Menu

Installation

Rebecca Shalfield

Download

Download the latest version of Kanbanara from Source Forge.

Once unzipped, ensure the Kanbanara folder and all its subfolders are writeable. On Windows, execute, as Administrator, a command similar to the following:

attrib -r c:\Kanbanara*.* /S

Underlying Technology

Python

Kanbanara is written in Python. The minimum version required is 3.6 but should also run happily on Python 3.7.

MongoDB

Kanbanara utilises the NoSQL database system, MongoDB, to store all its data.

Pre-requisites

In order to run Kanbanara, a number of pre-requisites will need to be installed:

  • Python 3.6 or later
  • MongoDB

The following Python libraries must also be installed:

Python Library pip install <library_name>
CherryPy cherrypy
Lipsum lipsum
Mako mako
PSUtil psutil
Pygal pygal
PyMongo pymongo
PyScss pyscss</library_name>

A special requirements.txt file has been created that allows you to load all the required Python libraries on mass. Just execute the following, ensuring the path both to Python's pip command and to the requirements.txt file are correct:

pip install -r requirements.txt

MongoDB

On Windows, a MongoDB service can be set up with a command such as the following:

"C:\Program Files\MongoDB\Server\3.6\bin\mongod.exe" --logpath C:\ProgramData\MongoDB\MyDatabases\log\MongoDB.log --dbpath C:\ProgramData\MongoDB\MyDatabases\db --directoryperdb --port 27017 --install --serviceName MongoDB_MyDatabases

For the above example, you would need to create the following directories:

C:\ProgramData\MongoDB\MyDatabases\db
C:\ProgramData\MongoDB\MyDatabases\log

If installing MongoDB 4.0, you can possibly omit the above step as their installation wizard can take of it for you.

Configuration Files

kanbanara.ini

The kanbanara.ini file holds settings for three distinct groups:

  • instance and port
  • CherryPy queue and thread sizes
  • email

==================== =======
Setting Default
==================== =======
admin_port 52622
instance
port 8081
public_ip_addr
request_queue_size 10
smtp_server_host
smtp_server_password
smtp_server_port
smtp_server_username
socket_host
socket_queue_size 30
thread_pool 50
website_port 8080
==================== =======

If the kanbanara.ini file does not currently exist, it will be automatically created by Kanbanara itself upon startup.

socket_host defaults to your host's private IP address. Should you wish Kanbanara to listen on all IP addresses, set socket_host to '0.0.0.0'.

public_ip_addr should only be set if you are running Kanbanara on a private IP address but wish it to be accessible via your public IP address. Setting the public_ip_addr forces buttons within Kanbanara which take you from one CherryPy web server to another to use your public IP address rather than your private one.

mongodb.ini

The mongodb.ini file holds settings for your MongoDB installation:

  • host (defaults to localhost)
  • port (defaults to 27017)
  • username
  • password
  • bindir (defaults to C:/Program Files/MongoDB/bin on Windows)

If the mongodb.ini file does not currently exist, it will be automatically created by Kanbanara itself upon startup.

administrator.ini

The administrator.ini file holds the username and password that will grant you access to certain administrative pages. For example, the entire registration details of your members can be seen by navigating to:

  • http://<ip_address>:<port>/authenticate/members</port></ip_address>

Upon first running Kanbanara, an administrator.ini file will be programmatically generated and contain a username and password totally unique to yourselves. Feel free to go into administrator.ini and change the username and/or password to something more memorable. You will need to restart Kanbanara for your changes to take effect.

Execution

Navigate to the root of the installation folder and execute (depending on your operating system):

  • kanbanara.bat

or

  • kanbanara.sh

You may need to do this at least a couple of times prior to Kanbanara successfully starting, the first time being to cause Kanbanara's .ini files to be automatically created.

Once Kanbanara (or at least the CherryPy web server) has started successfully, you should then be able to go to a web browser and navigate to http://<ip_address>:<port> to view Kanbanara's logon page.</port></ip_address>

Should you get the following error with a version of CherryPy greater than 8.9.1 (between 9.0.0 and 14.0.1):

  • AttributeError: module 'socket' has no attribute 'AF_UNIX'

you are advised to revert Cheroot to version 6.1.0:

  • pip install cheroot==6.1.0

Underneath, Kanbanara consists of four separate Python processes:
Watchdog (No UI)
Main (Listening on http://<ip_address>:<port>)
Admin (Listening on http://<ip_address>:<admin_port>)
</admin_port></ip_address>
Website (Listening on http://<ip_address>:<website_port>)</website_port></ip_address></port></ip_address>

Should any of the Main, Admin or Website processes exit or fail for any reason, the Watchdog process should restart them within a few minutes.

Should you encounter a problem launching any of the Kanbanara processes, look in the kba_admin_stderr.log, kba_main_stderr.log or kba_website_stderr.log files as to the cause.

Registration

Every user will need to register prior to gaining entry to Kanbanara.

During registration, you will be asked to enter your email address (which becomes your username), your first and last name, an optional nickname, and a password.

Should you need to update your first name, last name or nickname at a later date, this can be achieved via the 'My Name' option on the User Account menu towards the top right.

Website

By default, Kanbanara's web site is built into the product. Should you wish to disable the web site (and hence the Website python process) on your particular installation, simply rename the 'website' folder to 'website_'.

Logging On

You can log onto Kanbanara using the same username (email address) and password entered during registration.

Logging Off

You can manually log out of Kanbanara by clicking on the 'Logoff' option on the User Account menu towards the top right.