More than just another GUI to KONG Admin API
Konga is not an official app. No affiliation with Mashape.
- Discussions & Support
- Features
- Compatibility
- Prerequisites
- Used libraries
- Installation
- Configuration
- Running Konga
- More Kong related stuff
- License
If you need to discuss anything Konga related, we have a chatroom on Gitter:
- Manage APIs and plugins
- Manage API Load balancing via upstreams and targets
- Manage SSL credentials
- Manage consumers, groups and credentials
- Mass import consumers from :
- CSV document
- Google Spreadsheets
- MySQL
- MongoDB
- more underway...
- Multiple nodes management
- GUI level authentication
- Multiple users (Only admin and user roles for now)
- Persistent object store out of the box
- Easy database integration (MySQL, postgresSQL, MongoDB, SQL Server)
Konga is compatible with Kong 0.9.x,0.10.x
- A running Kong installation
- Nodejs
- Npm
- Gulp
- Bower
- Sails.js, http://sailsjs.org/
- AngularJS, https://angularjs.org/
- Bootstrap, http://getbootstrap.com/
Install npm
and node.js
. Instructions can be found here.
Install bower
, gulp
and sails
packages.
$ npm install bower gulp sails -g $ git clone https://github.com/pantsel/konga.git $ cd konga $ npm install
You can configure your application to use your environment specified settings.
There is an example configuration file on following path.
/config/local_example.js
Just copy this to /config/local.js
and make necessary changes to it. Note that this
local.js
file is in .gitignore so it won't go to VCS at any point.
Konga is bundled with It's own persistence mechanism for storing users and configuration.
A local persistent object store is used by default, which works great as a bundled, starter database (with the strict caveat that it is for non-production use only).
The application also supports some of the most popular databases out of the box:
- MySQL
- MongoDB
- PostgresSQL
- SQL Server
In order to use them, in your /config/local.js
replace
models: { connection: process.env.DB_ADAPTER || 'localDiskDb', }
with
models: { connection: process.env.DB_ADAPTER || 'the-name-of-adapter-you-wish-to-use', // 'mysql', 'mongo', 'sqlserver' or 'postgres' }
See Sails adapters for further configuration
$ npm start
Konga GUI will be available at http://localhost:1337
$ npm run production
Konga GUI will be available at http://localhost:1338
The following instructions assume that you have a running Kong instance following the instructions from Kong's docker hub
$ docker pull pantsel/konga $ docker run -p 1338:1338 --link kong:kong --name konga pantsel/konga
// You may also need to add an extra link that points to your database container $ docker run -p 1338:1338 --link kong:kong \ -e "DB_ADAPTER=the-name-of-the-adapter" \ // 'mongo','postgres','sqlserver' or 'mysql' -e "DB_HOST=your-db-hostname" \ -e "DB_PORT=your-db-port" \ // Defaults to the default db port -e "DB_USER=your-db-user" \ // Omit if not relevant -e "DB_PASSWORD=your-db-password" \ // Omit if not relevant -e "DB_DATABASE=your-db-name" \ // Defaults to 'konga_database' --name konga \ pantsel/konga
The GUI will be available at http://{your server's public ip}:1338
Login, go to settings -> new node and add http://kong:8001 for Kong Admin URL.
Admin login: admin | password: adminadminadmin
Demo user login: demo | password: demodemodemo
- Complete tests
- Add more consumer import adapters (?)
- Write a detailed Wiki
- Bundle more database adapters like cassandra
- Complete Kong 0.10.x compatibility with certs, upstreams and targets
Panagis Tselentis
The MIT License (MIT) ===================== Copyright (c) 2015 Panagis Tselentis THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.