Installation Guide

Tomas Jelinek edited this page May 10, 2017 · 14 revisions

How to Install and Run Kanbanik

There are three ways how to install kanbanik:

  • Install from docker
  • Using built WAR file
  • From sources

Install from docker

Kanbanik is now available also as a docker container: https://hub.docker.com/r/jelkosz/kanbanik/ To install it, run the following commands (works on Linux):

  • create a directory for mongodb to store the data, e.g.: mkdir -p /data/localdb
  • set the proper selinux policy on it: chcon -Rt svirt_sandbox_file_t /data/localdb
  • create a network for mongodb and kanbanik to talk on: docker network create --driver bridge kanbanik_nw
  • get the mongodb: docker pull mongo
  • run mongo: docker run -d -v /data/localdb:/data/db --network=kanbanik_nw --name mongodbserver mongo
  • get the kanbanik: docker pull jelkosz/kanbanik
  • run kanbanik: docker run -d --network kanbanik_nw -p 8080:8080 -e MONGODB_HOST='mongodbserver' jelkosz/kanbanik

Now you will be able to access kanbanik on the 8080 port of localhost.

Install Using WAR file

  • Install MongoDB (2.2.0 or higher)
  • Run MongoDB on default port (27017)
  • Install java
  • Install a java web server of your choice (e.g. jetty, tomcat, etc.).
  • Download the kanbanik-application-.zip from the download section
  • Unpack the application
  • Deploy the kanbanik.war file into the web server. For example on jetty just drop the war file into jetty/webapps folder.

Install From Sources

Preconditions:

  • JDK 1.6 or higher properly installed and set up
  • maven2 o higher properly installed and set up
  • If you want to execute also the tests during the build, than a MongoDB instance with no authorization running on default port on the same machine as the build is executed

If you have all the preconditions fulfilled, than:

  • First you need to checkout the sources:
git clone https://github.com/kanbanik/kanbanik.git
  • Open a console and cd to the
<kanbanik-root>/kanbanik-parent directory
  • Type
mvn clean install
  • If you want to skip the tests, than
mvn clean install -DskipTests
  • This will take a while at the first time, as maven will need to download lots of dependencies.
  • If successfully finished, you should find the final WAR in kanbanik-web:
<kanbanik-root>/kanbanik-web/target/kanbanik.war
  • If yes, you can use this WAR file to deploy to the kanbanik-runtime (Install Using the Runtime) or to your own environment (Install Using WAR file)

First Login

After you have successfully installed Kanbanik, you will need to log in. The default credentials are:

  • Username: admin
  • Password: admin

Configuration Parameters

Kanbanik is configured by editing the web.xml file or by the providing environment variables to it (since 1.0.2). Both have the same name. If both provided, the environment variable has priority. To change the web.xml, you need to edit it inside the WAR archive in the kanbanik-application.war/WEB-INF/web.xml

By default, Kanbanik will try to login to mongo instance with the following settings: server: 127.0.0.1 port: 27017 db name: kanbanikdb credentials: without authentication

The following options are available (since version 1.0.2):

Param Description Default Value
MONGODB_HOST Server where the MongoDB instance is running 127.0.0.1
MONGODB_PORT Port on which MongoDB is listening 27017
MONGODB_DATABASE The name of the DB in the MongoDB instance. Should not make sense to change it. kanbanikdb
MONGODB_AUTHENTICATION_REQUIRED If should try to authenticate against MongoDB false
MONGODB_USER The user name used to connect to MongoDB - ignored when mongoAuthenticationRequired is false empty
MONGODB_PASSWORD The password used to connect to MongoDB - ignored when mongoAuthenticationRequired is false empty
ENABLE_GZIP_COMMUNICATION By default, kanbanik will gzip the commnunication between frontend and backend. This option can disable it true
ENABLE_ACCESS_CONTROL_HEADERS Allows / disallows the following headers: "Access-Control-Allow-Origin", "*" "Access-Control-Allow-Methods", "PUT, GET, POST, DELETE, OPTIONS", "Access-Control-Allow-Headers","origin, access-control-allow-methods, content-type, access-control-allow-origin, access-control-allow-headers", "Access-Control-Max-Age", "1800" false

The following options are available (up to version 1.0.1):

Param Description Default Value
mongoServer Server where the MongoDB instance is running 127.0.0.1
mongoPort Port on which MongoDB is listening 27017
mongoDBName The name of the DB in the MongoDB instance. Should not make sense to change it. kanbanikdb
mongoAuthenticationRequired If should try to authenticate against MongoDB false
mongoUser The user name used to connect to MongoDB - ignored when mongoAuthenticationRequired is false empty
mongoPassword The password used to connect to MongoDB - ignored when mongoAuthenticationRequired is false empty
You can’t perform that action at this time.
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session.
Press h to open a hovercard with more details.