GithubHelp home page GithubHelp logo

pgbi / kong-dashboard Goto Github PK

View Code? Open in Web Editor NEW
2.2K 2.2K 400.0 920 KB

Dashboard for managing Kong gateway

License: MIT License

JavaScript 89.04% HTML 10.08% CSS 0.79% Shell 0.04% Dockerfile 0.05%
kong kong-dashboard kong-gateway

kong-dashboard's People

Contributors

ashi880 avatar balexandre avatar bucha avatar erwannrobin avatar filotti avatar haha1903 avatar heroin avatar icemanyu avatar illyams avatar jfirehammer-credibly avatar jolivr avatar kidbrax avatar marcel-dias avatar maxtuzz avatar nite-knite avatar p3tecracknell avatar peeyush1234 avatar perryao avatar pgbi avatar rodcloutier avatar sravanmedarapu avatar stevesloka avatar szynaka avatar toilal avatar vl4d avatar ybonnel avatar zhouzhuojie avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

kong-dashboard's Issues

NodeJS issue

Hello
i have a probleme with nodejs when i try to install kong-dashboard, could you please spicify what version of nodejs kong-dashboard need to work correctly

Thank you

create the public/font folder before copying the material design icons

when building the assets, this error shows up
ENOENT, mkdir 'H:\VirtualMachine\kongVagrant\kong-dashboard\public\font\material-design-icons'

to fix it create ./public/font folder
var compile_html = function() { fs.copy('./src/html', './public/html', handle_error); fs.copy('./src/index.html', './public/index.html', handle_error) fs.mkdir('./public/font', handle_error) fs.copy('./bower_components/Materialize/dist/font/roboto', './public/font/roboto', handle_error); fs.copy('./bower_components/material-design-icons/iconfont/', './public/font/material-design-icons', handle_error); };

`node ./bin/kong-dashboard build` fails on Windows 10

With latest node and npm versions installed the install fails on node ./bin/kong-dashboard build.

Log:

48683 silly lifecycle [email protected]~install: Args: [ '/d /s /c', 'node ./bin/kong-dashboard build' ]
48684 silly lifecycle [email protected]~install: Returned: code: 1  signal: null
48685 info lifecycle [email protected]~install: Failed to exec install script
48686 verbose unlock done using C:\Users\<USER>\AppData\Roaming\npm-cache\_locks\staging-952186523723db65.lock for C:\Users\<USER>\AppData\Roaming\npm\node_modules\.staging
48687 silly rollbackFailedOptional Starting
48688 silly rollbackFailedOptional Finishing
48689 silly runTopLevelLifecycles Starting
48690 silly runTopLevelLifecycles Finishing
48691 silly install printInstalled
48692 verbose stack Error: [email protected] install: `node ./bin/kong-dashboard build`
48692 verbose stack Exit status 1
48692 verbose stack     at EventEmitter.<anonymous> (C:\Users\<USER>\AppData\Roaming\npm\node_modules\npm\lib\utils\lifecycle.js:232:16)
48692 verbose stack     at emitTwo (events.js:87:13)
48692 verbose stack     at EventEmitter.emit (events.js:172:7)
48692 verbose stack     at ChildProcess.<anonymous> (C:\Users\<USER>\AppData\Roaming\npm\node_modules\npm\lib\utils\spawn.js:24:14)
48692 verbose stack     at emitTwo (events.js:87:13)
48692 verbose stack     at ChildProcess.emit (events.js:172:7)
48692 verbose stack     at maybeClose (internal/child_process.js:818:16)
48692 verbose stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:211:5)

unable load Kong-dashboard

Hello,

I have installed the Kong-Dashboard and i am getting the following error when i tried to load the webpage using http://127.0.0.1:8080,

Cannot GET /

On the server, i see that the web services are running. Below is the screen shot of the same,

Launching webserver
serving /var/kong-dashboard/public on port 8080

request your inputs on the same.

Thanks for your support.

Consumer id to be displayed

When viewing a customer, the id generated by kong when creating the customer should be shown. Right now, only the customer custom id is displayed.

can not Kong node configuration in kong-dashboard

I installed Kong on Centos7

sudo yum install kong-0.8.0.el7.noarch.rpm --nogpgcheck
kong start
curl 127.0.0.1:8001
OUTPUT:
{"timers":{"running":0,"pending":3},"version":"0.8.0","configuration":{"sendanonymous_reports":true,"dns_resolver":{"address":"127.0.0.1:8053","dnsmasq":true,"port":8053},"postgres":{"host":"127.0.0.1","database":"kong","user":"kong","port":5432},"cluster_listen":"0.0.0.0:7946","cluster":{"auto-join":true,"profile":"wan","ttl_on_failure":3600},"proxy_listen":"0.0.0.0:8000","nginx":"{{user}}\nworker_processes auto;\nerror_log logs/error.log error;\ndaemon on;\n\nworker_rlimit_nofile {{auto_worker_rlimit_nofile}};\n\nenv KONG_CONF;\nenv PATH;\n\nevents {\n worker_connections {{auto_worker_connections}};\n multi_accept on;\n}\n\nhttp {\n resolver {{dns_resolver}} ipv6=off;\n charset UTF-8;\n\n access_log logs/access.log;\n access_log off;\n\n # Timeouts\n keepalive_timeout 60s;\n client_header_timeout 60s;\n client_body_timeout 60s;\n send_timeout 60s;\n\n # Proxy Settings\n proxy_buffer_size 128k;\n proxy_buffers 4 256k;\n proxy_busy_buffers_size 256k;\n proxy_ssl_server_name on;\n\n # IP Address\n real_ip_header X-Forwarded-For;\n set_real_ip_from 0.0.0.0/0;\n real_ip_recursive on;\n\n # Other Settings\n client_max_body_size 0;\n underscores_in_headers on;\n reset_timedout_connection on;\n tcp_nopush on;\n\n ################################################\n # The following code is required to run Kong #\n # Please be careful if you'd like to change it #\n ################################################\n\n # Lua Settings\n lua_package_path ';;';\n lua_code_cache on;\n lua_max_running_timers 4096;\n lua_max_pending_timers 16384;\n lua_shared_dict reports_locks 100k;\n lua_shared_dict cluster_locks 100k;\n lua_shared_dict cluster_autojoin_locks 100k;\n lua_shared_dict cache {{memory_cache_size}}m;\n lua_shared_dict cassandra 1m;\n lua_shared_dict cassandra_prepared 5m;\n lua_socket_log_errors off;\n {{lua_ssl_trusted_certificate}}\n\n init_by_lua_block {\n kong = require "kong"\n kong.init()\n }\n\n init_worker_by_lua_block {\n kong.init_worker()\n }\n\n server {\n server_name ;\n listen {{proxy_listen}};\n listen {{proxy_listen_ssl}} ssl;\n\n ssl_certificate_by_lua_block {\n kong.ssl_certificate()\n }\n\n ssl_certificate {{ssl_cert}};\n ssl_certificate_key {{ssl_key}};\n ssl_protocols TLSv1 TLSv1.1 TLSv1.2;# omit SSLv3 because of POODLE (CVE-2014-3566)\n\n location / {\n default_type 'text/plain';\n\n # These properties will be used later by proxy_pass\n set $upstream_host nil;\n set $upstream_url nil;\n\n # Authenticate the user and load the API info\n access_by_lua_block {\n kong.access()\n }\n\n # Proxy the request\n proxy_set_header X-Real-IP $remote_addr;\n proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;\n proxy_set_header X-Forwarded-Proto $scheme;\n proxy_set_header Host $upstream_host;\n proxy_pass $upstream_url;\n proxy_pass_header Server;\n\n # Add additional response headers\n header_filter_by_lua_block {\n kong.header_filter()\n }\n\n # Change the response body\n body_filter_by_lua_block {\n kong.body_filter()\n }\n\n # Log the request\n log_by_lua_block {\n kong.log()\n }\n }\n\n location /robots.txt {\n return 200 'User-agent: \nDisallow: /';\n }\n\n error_page 500 502 503 504 /50x;\n\n location = /50x {\n internal;\n content_by_lua_block {\n require("kong.core.error_handlers")(ngx)\n }\n }\n }\n\n server {\n listen {{admin_api_listen}};\n\n client_max_body_size 10m;\n client_body_buffer_size 10m;\n\n location / {\n default_type application/json;\n content_by_lua_block {\n ngx.header["Access-Control-Allow-Origin"] = ""\n if ngx.req.get_method() == "OPTIONS" then\n ngx.header["Access-Control-Allow-Methods"] = "GET,HEAD,PUT,PA
but when config to kong-dashboard
regis link
http://localhost:8080/#/config
this alert "that's not kong node"

I installed kong and kong-dashboard successful, end check kong port 8001 that ok.
But i can not Kong node configuration in kong-dashboard, it is notify "that is not kong node". someone please help me, thanks!

The kong-dashboard server only listens to "localhost", not to its assigned IP address

After getting kong-dashboard up and running and trying to access it, it will only answer requests directed to localhost:8080 (or 127.0.0.1:8080). You cannot access the dashboard from a different system, as the gulp server doesn't listen to other network interfaces.

This may be intentionally, or not, I don't know.

The workaround for me was to add a host setting when creating the webserver instance (in gulpFile.js):

    gulp.src('public')
        .pipe(webserver({
            livereload: false,
            host: "0.0.0.0",
            directoryListing: false,
            open: true,
            port: 8080
        }));

Adding host: "0.0.0.0" makes the server listen to all network interfaces.

kong-vagrant with kong-dashboard

Hi All,
Hope someone can advise, I have sucesfully got the kong-vagrant version running, i Installed the kong-dashboard but not onto the kong-vagrant as the nmp install errors with issues so installed on the main host and no issues however when I go to localhost:8080 the return is Cannot GET / .

is there something else i need to do to get this going or do I need to figure out how to install npm onto the kong-vagrant virtual?

Any help or feedback would be greatly appreciated

Thanks

Mitch

Configuring Basic Auth

Hi,

Firstly thank you for building a great tool! I am currently trying to configure basic auth but am currently unable to do so.

I have added the following config to the server section related to the admin port in kong

  auth_basic "Restricted";
  auth_basic_user_file security/htpasswd;

However when I try to log in I get the following error:

Response to preflight request doesn't pass access control check: No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin '' is therefore not allowed access. The response had HTTP status code 401

I am however able to query the admin API using the basic auth credentials?

Any help would be greatly appreciated.

Regards
Brian

TLS/SSL for dashboard?

Is there a way to configure the dashboard to use https? It seems like there should be a way, especially when no TLS means we're passing admin API creds to the dashboard unencrypted.

Am I misunderstanding/misusing the dashboard configuration here, or do you have any recommendations for configuring the dashboard server?

Any help would be greatly appreciated.

Password management with Basic Auth plugin

  • Kong is returning hashed passwords when requesting GET /consumers/{id}/basic-auth. Instead of displaying the hash, which is useless and misleading, nothing or ****** should be displayed.
  • Kong dashboard does not give the possibility to choose a password for basic auth, assuming Kong will auto generate one. Because of this Kong issue Kong/kong#772 , auto generated password are empty. So Kong dashboard should let the user choose a password.

Basic Authentication support

Using nginx as a frontend before Kong, I've introduced a basic authentication on Admin API.

It would be great to support such authentication inside kong-dashboard.

community push

lmk when you feel confortable enough in sharing it and we'll include it in the next kong newsletter

Doesn't work with Kong 0.8.0 because tagline in that version is 'kong' lowercase

Spun up the new Kong 0.8.0 to kick the tires. Couldn't get dashboard to recognize the node as a node. Quick review of the code tells me that it's trying to match the 'tagline' attribute returned a GET to the admin panel but can't because the case of Kong in the tagline has been changed.

Recommend a less brittle way of assessing if is, in fact, a Kong node.

Feature Req: http-proxy support

I'm having a tough time setting up what was recommended in issue #22. Default Kong Admin CORS support doesn't seem to play well with basic-auth plugin, especially across different browsers. I can't seem to override it with the CORS plugin either. Would it be possible to get http-proxy support for this dashboard?

Example implementation/mod (expressjs): https://github.com/niiknow/kong-dashboard
Dashboard deployed: http://dock1.brickinc.net:8080/ (demo basic-auth security)
I setup Kong API endpoint as recommended in issue #22 and docker environment variable KONG_URL=http://kong-api:8001/kong

As an example where kong-api is on dock4 host. Also disabled docker port mapping to 8001: http://dock4.brickinc.net:8001 (disabled) vs http://dock4.brickinc.net:8000 and http://dock4.brickinc.net:8443
Kong Rancher Docker Compose: https://github.com/trybrick/community-catalog/blob/master/templates/kong/0/docker-compose.yml

Documentation/Docker: https://hub.docker.com/r/brickinc/kong-dashboard/

Of course, this feature may prevent the SPA to be statically hosted only scenario. Alternative solution would be to use aerobatic service ( https://www.aerobatic.com/) which provide free static hosting and added proxy backend to overcome CORS.

Another use-case for the proxy is with Docker management like Rancher/TumTum. Point everything to Rancher internal IPs and firewall/enable the dashboard on a needed basis.

** My issue may just be a configuration issue or it may be a Kong issue. I do not know. It may be that we need better documentation on how to set it up. As I noted before, if CORS is working correctly, there are great benefit for this App to be statically hosted only. This way, everyone can use the same App to access their API from anywhere. Excellent work by the way! Thanks for sharing and keep up the great work!

UI for /oauth2_tokens endpoint

Kong 0.6.0 exposes a new endpoint in its admin API to manage oauth2 access tokens. Kong dashboard shall provide a UI for interacting with this endpoint.

Any suggestion regarding where this would fit in the UI will be appreciated!

Calls to Kong cluster should be made from server not browser

For background, see this: Kong/kong#133

The Kong admin API has no authentication built into it, which means that anyone that has port access can make unfettered changes. The solution, as stated in the Kong issue above, is to firewall protect that server, typically port 8001.

However, kong-dashboard makes direct calls to that port, which won't work with a firewall in place.

I'd recommend having the browser call the kong-dashboard node server via a route that passes along the request to the defined Kong server (config.url) on port 8001. That way the server that kong-dashboard runs on can is all that needs access to the Kong cluster, and not the machine that the browser is running from. So, instead of the Angular service in browser going direct to Kong cluster, it goes Angular service to node, and then from node to Kong.

Further extensions to kong-dashboard might include login authentication and authorization I presume, and then UI access can be protected, changes logged, etc.

I'm just evaluating Kong & kong-dashboard but if time allows and it would be welcome, might generate a supporting PR.

Invalid configuration because of empty fields

When a field is empty, it should not be added to REST request.

As a consequence, ip-restriction plugin doesn't work properly when configured with kong-dashboard. If I configure with the whitelist only, here's the resulting configuration:

{
  "api_id": "7a6f3a89-cacc-4dfa-cdff-220757de3ff9",
  "id": "6b8e5ed1-865f-49b1-c9e9-ac7fa5cd122a",
  "created_at": 1449353915000,
  "enabled": true,
  "name": "ip-restriction",
  "config": {
    "blacklist": {},
    "whitelist": [
      "172.17.0.1"
    ],
    "_whitelist_cache": {},
    "_blacklist_cache": {}
  }
}

As you can see, blacklist is created with an empty object, and it makes the plugin consider there's a blacklist defined.

Also, I think _whitelist_cache and _blacklist_cache are added by kong-dashboard too, but is not required.

Kong node configuration error

It shows error: "That's not a kong node" when configuring kong node in /#/config.

checked kong is ok in restfulAPI. (with "tagline":"Welcome to kong") Is there anything missing? Please help. Thank you.

kong-dashboard: v1.1.1
kong: v0.8.0

----- from kong 8001-----
{"timers":{"running":0,"pending":3},"version":"0.8.0","configuration":{"send_anonymous_reports":true,"dns_resolver":{"address":"127.0.0.1:8053","dnsmasq":true,"port":8053},"postgres":{"host":"127.0.0.1","database":"kong","user":"kong","port":5432},"cluster_listen":"0.0.0.0:7946","cluster":{"auto-join":true,"profile":"wan","ttl_on_failure":3600},"proxy_listen":"0.0.0.0:8000","nginx":"{{user}}\nworker_processes auto;\nerror_log logs/error.log error;\ndaemon on;\n\nworker_rlimit_nofile {{auto_worker_rlimit_nofile}};\n\nenv KONG_CONF;\nenv PATH;\n\nevents {\n worker_connections {{auto_worker_connections}};\n multi_accept on;\n}\n\nhttp {\n resolver {{dns_resolver}} ipv6=off;\n charset UTF-8;\n\n access_log logs/access.log;\n access_log off;\n\n # Timeouts\n keepalive_timeout 60s;\n client_header_timeout 60s;\n client_body_timeout 60s;\n send_timeout 60s;\n\n # Proxy Settings\n proxy_buffer_size 128k;\n proxy_buffers 4 256k;\n proxy_busy_buffers_size 256k;\n proxy_ssl_server_name on;\n\n # IP Address\n real_ip_header X-Forwarded-For;\n set_real_ip_from 0.0.0.0/0;\n real_ip_recursive on;\n\n # Other Settings\n client_max_body_size 0;\n underscores_in_headers on;\n reset_timedout_connection on;\n tcp_nopush on;\n\n ################################################\n # The following code is required to run Kong #\n # Please be careful if you'd like to change it #\n ################################################\n\n # Lua Settings\n lua_package_path ';;';\n lua_code_cache on;\n lua_max_running_timers 4096;\n lua_max_pending_timers 16384;\n lua_shared_dict reports_locks 100k;\n lua_shared_dict cluster_locks 100k;\n lua_shared_dict cluster_autojoin_locks 100k;\n lua_shared_dict cache {{memory_cache_size}}m;\n lua_shared_dict cassandra 1m;\n lua_shared_dict cassandra_prepared 5m;\n lua_socket_log_errors off;\n {{lua_ssl_trusted_certificate}}\n\n init_by_lua_block {\n kong = require "kong"\n kong.init()\n }\n\n init_worker_by_lua_block {\n kong.init_worker()\n }\n\n server {\n server_name _;\n listen {{proxy_listen}};\n listen {{proxy_listen_ssl}} ssl;\n\n ssl_certificate_by_lua_block {\n kong.ssl_certificate()\n }\n\n ssl_certificate {{ssl_cert}};\n ssl_certificate_key {{ssl_key}};\n ssl_protocols TLSv1 TLSv1.1 TLSv1.2;# omit SSLv3 because of POODLE (CVE-2014-3566)\n\n location / {\n default_type 'text/plain';\n\n # These properties will be used later by proxy_pass\n set $upstream_host nil;\n set $upstream_url nil;\n\n # Authenticate the user and load the API info\n access_by_lua_block {\n kong.access()\n }\n\n # Proxy the request\n proxy_set_header X-Real-IP $remote_addr;\n proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;\n proxy_set_header X-Forwarded-Proto $scheme;\n proxy_set_header Host $upstream_host;\n proxy_pass $upstream_url;\n proxy_pass_header Server;\n\n # Add additional response headers\n header_filter_by_lua_block {\n kong.header_filter()\n }\n\n # Change the response body\n body_filter_by_lua_block {\n kong.body_filter()\n }\n\n # Log the request\n log_by_lua_block {\n kong.log()\n }\n }\n\n location /robots.txt {\n return 200 'User-agent: \nDisallow: /';\n }\n\n error_page 500 502 503 504 /50x;\n\n location = /50x {\n internal;\n content_by_lua_block {\n require("kong.core.error_handlers")(ngx)\n }\n }\n }\n\n server {\n listen {{admin_api_listen}};\n\n client_max_body_size 10m;\n client_body_buffer_size 10m;\n\n location / {\n default_type application/json;\n content_by_lua_block {\n ngx.header["Access-Control-Allow-Origin"] = ""\n if ngx.req.get_method() == "OPTIONS" then\n ngx.header["Access-Control-Allow-Methods"] = "GET,HEAD,PUT,PATCH,POST,DELETE"\n ngx.header["Access-Control-Allow-Headers"] = "Content-Type"\n ngx.exit(204)\n end\n local lapis = require "lapis"\n lapis.serve "kong.api.app"\n }\n }\n\n location /nginx_status {\n internal;\n access_log off;\n stub_status;\n }\n\n location /robots.txt {\n return 200 'User-agent: *\nDisallow: /';\n }\n }\n}\n","custom_plugins":{},"proxy_listen_ssl":"0.0.0.0:8443","dns_resolvers_available":{"server":{"address":"8.8.8.8"},"dnsmasq":{"port":8053}},"dao_config":{"contact_points":["127.0.0.1:9042"],"data_centers":{},"ssl":{"verify":false,"enabled":false},"port":9042,"timeout":5000,"replication_strategy":"SimpleStrategy","keyspace":"kong","replication_factor":1,"consistency":"ONE"},"nginx_working_dir":"/usr/local/kong","admin_api_listen":"0.0.0.0:8001","plugins":["ssl","jwt","acl","correlation-id","cors","oauth2","tcp-log","udp-log","file-log","http-log","key-auth","hmac-auth","basic-auth","ip-restriction","mashape-analytics","request-transformer","response-transformer","request-size-limiting","rate-limiting","response-ratelimiting","syslog","loggly","datadog","runscope","ldap-auth","statsd"],"pid_file":"/usr/local/kong","cassandra":{"contact_points":["127.0.0.1:9042"],"data_centers":{},"ssl":{"verify":false,"enabled":false},"port":9042,"timeout":5000,"replication_strategy":"SimpleStrategy","keyspace":"kong","replication_factor":1,"consistency":"ONE"},"database":"cassandra","memory_cache_size":128,"cluster_listen_rpc":"127.0.0.1:7373"},"lua_version":"LuaJIT 2.1.0-beta1","tagline":"Welcome to kong","hostname":"jiagou-59","plugins":{"enabled_in_cluster":["key-auth"],"available_on_server":["ssl","jwt","acl","correlation-id","cors","oauth2","tcp-log","udp-log","file-log","http-log","key-auth","hmac-auth","basic-auth","ip-restriction","mashape-analytics","request-transformer","response-transformer","request-size-limiting","rate-limiting","response-ratelimiting","syslog","loggly","datadog","runscope","ldap-auth","statsd"]}}

Cannot Build on Ubuntu.

When attempting to install Kong Dashboard, I've been getting the following error with no sense of how to get through it.

> [email protected] install /usr/local/lib/node_modules/kong-dashboard
> node ./bin/kong-dashboard build

Downloading javascript librairies...

/usr/local/lib/node_modules/kong-dashboard/lib/kong-dashboard.js:21
            if (err) throw err;
                           ^
Error: Command failed: 
Error: EACCES, permission denied '/root/.config/configstore/bower-github.yml'
You don't have access to this file.

The building fails on this line: node ./bin/kong-dashboard build.

I've attempted a few fixes online, including changing the permissions of the .config folder, installing bower and the other dependancies globally, separately of the dashboard, but still to no avail.

Any help is greatly appreciated.

kong-dashboard error on install

Running on CentOS 6.7.

running npm install -g kong-dashboard, get the below error.

Downloading javascript librairies...

/root/.npm-global/lib/node_modules/kong-dashboard/lib/kong-dashboard.js:21
if (err) throw err;
^
Error: Command failed: bower ESUDO Cannot be run with sudo

Additional error details:
Since bower is a user command, there is no need to execute it with superuser permissions.
If you're having permission errors when using bower without sudo, please spend a few minutes learning more about how your system should work and make any necessary repairs.

http://www.joyent.com/blog/installing-node-and-npm
https://gist.github.com/isaacs/579814

You can however run a command with sudo using --allow-root option

at ChildProcess.exithandler (child_process.js:658:15)
at ChildProcess.emit (events.js:98:17)
at maybeClose (child_process.js:766:16)
at Process.ChildProcess._handle.onexit (child_process.js:833:5)

npm ERR! weird error 8
npm ERR! not ok code 0

Add image to Docker Hub

It would be great if the image built from this repository could be added to the Docker Hub.
It would eliminate the Git checkout step and enable the use of standard docker work-flows.

The process is fully described here

Allow customization of local port

Currently the port 8080 is hardcoded into gulpFile.js, which can cause conflicts if other apps are running simultaneously. A quick change to allow for process.env.PORT || 8080 would allow an environment variable to set for this as desired.

Theme customization to be documented

Create a wiki page explaining primary color and other materialize css framework variables can be overridden in src/scss/_custom_theme.scss in order to create a custom theme.

NPM global install

Hey! Great work! I've been using postman for Kong thusfar, and this will make things a lot easier!

I was taking a look at your installation instructions, and was thinking it might be a bit easier to set up an npm global install, so you can run something like this:

npm install --global pgbi-kong-dashboard

and have it be available under a bin name like kong-dashboard.

kong-dashboard start fails on local install

When not installing globally the server will not come up.

Steps taken:

npm install kong-dashboard
npm install grunt

(notice another issue, grunt must also be installed)

Next when trying to run the local version of the dashboard I get an error:

$ ./node_modules/.bin/kong-dashboard start -p 8000
Launching webserver
<project_root>/node_modules/kong-dashboard/lib/kong-dashboard.js:98
        throw err;
        ^

Error: Command failed: /bin/sh -c <project_root>/node_modules/kong-dashboard/lib/../node_modules/.bin/serve --port 8000 --no-logs --no-icons <project_root>/node_modules/kong-dashboard/lib/../public
/bin/sh: <project_root>/node_modules/kong-dashboard/lib/../node_modules/.bin/serve: No such file or directory

    at ChildProcess.exithandler (child_process.js:213:12)
    at emitTwo (events.js:100:13)
    at ChildProcess.emit (events.js:185:7)
    at maybeClose (internal/child_process.js:821:16)
    at Socket.<anonymous> (internal/child_process.js:319:11)
    at emitOne (events.js:90:13)
    at Socket.emit (events.js:182:7)
    at Pipe._onclose (net.js:469:12)

Notice I replaced my project root absolute path with: <project_root>. And my node version is as follows:

$ node --version
v5.5.0

"Strip request path" setting cannot be undone

When adding/updating an API, once you have set the "Strip request path" property of the API, you cannot undo it.

Steps to reproduce:

  1. Create an API, check the "Strip request path" checkbox, save
  2. Update the same API, uncheck the "Strip request path" checkbox, save
  3. Click "Edit" for the same API again.

Result: The checkbox "Strip request path" is still set.

Expected: The checkbox is unchecked.

"Kong node URL": Specify wich endpoint is meant in the docs

I can successfully start the Docker image for this project. When I access the application, I'm prompted for a Kong node URL. Could be please add a description in the docs / UI what is meant with this exactly?

The proxy_listen port, the proxy_listen_ssl port or the admin_api_listen port? I guess it's he latter, but if I enter the application and want to add an API, a "not found" message pops up.

From looking at the URL which is requested in the browser, I see that the http://IP:PORT//apis path doesn't exist and gives a 404.

Generic error when submitting through dashboard

I have kong, cassandra and kong-dashboard running in Docker using docker-compose. Kong and Cassandra appear to be running just fine but I'm having a problem creating and editing anything (apis, consumers and plugins) through the dashboard. Getting the "Oops, something wrong happened. Please refresh the page" error. Refreshing the page does not seem to help.

I am able to run a curl against the same install of Kong and that is working. And then I can refresh the dashboard and it shows the right data. So most of it's working and it's hooked to the right instance and everything. Just something about the requests are not being processed properly. Any suggestions for me to check out?

Cannot GET /go/home

Tried with manual install and docker one. With kong running on its docker.

Everything went OK on the install or docker deploy, the server is running apparently fine.
But when you try to browse http://localhost:8080 I've get this message Cannot GET /go/home.

Any idea how to solve?

Can access Kong Admin API with nginx basic authen

Hello,

I setup Kong Admin API with nginx basic authentication. I saw kong-dashboard support login with basic authentication. However, It is not work.

Do you have any way to debug or investigate ?

Instruction for starting on customer port are incorrect

The instructions say:

To start Kong Dashboard on a custom port

npm start -- -p [port]

However using that command results in this error:

Error: ENOENT, open '/usr/local/kong-dashboard/node_modules/-p/package.json'

Appears to be treating the "-p" as a module to load.

Angular module error

When installed globally the site loads but Angular is not running. The developer console contains the following error:

Uncaught Error: [$injector:modulerr] http://errors.angularjs.org/1.4.7/$injector/modulerr?p0=ng&p1=Error%3A%20%5…%20at%20Z.a%20(http%3A%2F%2Flocalhost%3A8000%2Fjs%2Fapp.min.js%3A3%3A29086)

Plugins don't show

Hi,

I installed the dashboard on my localhost (through both Docker and npm) but whe ntry to configure , nothing shows up except a list of all "true"s.

screen shot 2016-08-25 at 5 40 10 pm

Any idea what might be wrong?

Menu Options

I'm using Kong 0.6.0.

I've installed the dashboard and can successfully access my Kong deployment.

But none of the top right menus work ("! not found"). Is there a minimum compatibility with Kong for the dashboard?

Any customization manual ?

I would like to customize the kong dashboard home page etc. I made some changes to src/home.html and restarted kong-dashboard start but the changes did not reflect , any help ?

Cannot associate plugin with specific consumer

Hi Pierre,

thanks for the great tool! There is an issue with associating a plugin with a specific consumer instance. This issue #26 mentioned the same effect and you closed it, but I think it's a bug.

This is the payload from my local installation sent to the Kong server when I try to add a Rate Limiter plugin to a specific consumer:

{ api_id: "c2828feb-5605-4d9e-cd38-1298861a68f9", name: "rate-limiting", config: { minute: "10" } }
What is missing from the payload is the 'consumer_id' attribute which - according to the Kong API - is supported but optional. I guess that's the whole problem.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.