Running a own Kadira instance Update: now with a guide!

replace all the sh in the package.json with bash so it looks like this:

{
  "name": "kadira-rma",
  "version": "1.0.0",
  "description": "",
  "scripts": {
    "start": "run-p -l run:**",
    "run:errors-1min": "PROFILE=1min PROVIDER=errors bash start.sh",
    "run:errors-30min": "PROFILE=30min PROVIDER=errors bash start.sh",
    "run:errors-3hour": "PROFILE=3hour PROVIDER=errors bash start.sh",
    "run:methods-1min": "PROFILE=1min PROVIDER=methods bash start.sh",
    "run:methods-30min": "PROFILE=30min PROVIDER=methods bash start.sh",
    "run:methods-3hour": "PROFILE=3hour PROVIDER=methods bash start.sh",
    "run:pubsub-1min": "PROFILE=1min PROVIDER=pubsub bash start.sh",
    "run:pubsub-30min": "PROFILE=30min PROVIDER=pubsub bash start.sh",
    "run:pubsub-3hour": "PROFILE=3hour PROVIDER=pubsub bash start.sh",
    "run:system-1min": "PROFILE=1min PROVIDER=system bash start.sh",
    "run:system-30min": "PROFILE=30min PROVIDER=system bash start.sh",
    "run:system-3hour": "PROFILE=3hour PROVIDER=system bash start.sh"
  },
  "dependencies": {
    "npm-run-all": "^3.1.2",
    "pick-mongo-primary": "^0.5.0"
  }
}

as for those initial memory leak exceptions, I’m playing around - so far they don’t affect the app ¯\(ツ)

@speak2ravi did you already find the cause of the error? Its usually a bad connection string format for mongodb

@vladgolubev amazing work you have done! I can’t establish a secured connection.
ubuntu_kadira-ui_1 is connecting on http not https
but can’t connect to ubuntu_kadira-engine_1 over http nor https

Over the App chorme console logs return;
GET https://enginex.kadira.io/simplentp/sync net::ERR_NAME_NOT_RESOLVED

ubuntu@ip-10-0-2-91:~$ sudo -E docker-compose ps
WARNING: The KADIRA_MONGO_URL variable is not set. Defaulting to a blank string.
         Name                       Command               State               Ports              
------------------------------------------------------------------------------------------------
ubuntu_kadira-engine_1   npm run start                    Up      0.0.0.0:11011->11011/tcp       
ubuntu_kadira-rma_1      npm run start                    Up                                     
ubuntu_kadira-ui_1       su -c /usr/bin/entrypoint. ...   Up      0.0.0.0:4000->4000/tcp, 80/tcp 
ubuntu@ip-10-0-2-91:~$

Did you try to set ENV Var KADIRA_OPTIONS_ENDPOINT=https://host:port ?

Thanks, it works! :wink:

I am running the docker-compose and can connect to the admin UI. But even after adding the kadira secret/id in the app it doesnt seem to work. We still need to connect to the only exposed endpoint at port 4000 right?

I setup the docker images to run on cloud server, opened up ports 4000 and 11011, and set KADIRA_OPTIONS_ENDPOINT=http://:11011

still get Kadira auth error

Yes, it works!! But I used

KADIRA_OPTIONS_ENDPOINT=http://host:port

Not S (Secured) . Connection to the docker Kadira Engine is over http. I am putting NGINX in front for security, that is fine.

yes, was able to resolved that particular error

When I run the following commands,

docker run --rm -it
-e MONGO_URL=$KADIRA_MONGO_URL
-p 4000:4000
kadira-ui

I get the error

Error: no hostname or hostnames provided in connection string

So did we get this working?

Has any one built a service I can just tie in to? My app is at 15gb ram used lol, clearly I have a leak. I need Kadira.

Its work in progress. Need to sort out some stuff to have it running as a service. It might take a bit of time lets say 2 weeks. Its unfortunately a spare time project still

Cool, well, I’d sign up for sure. Keep the pricing fair - I’m a startup app too!

www.StarCommanderOnline.com is my Meteor project. I’m doing custom hosting on Google Cloud Compute and therfor no Kadira + Galaxy.

Good luck, PM me when ready.

Hi @vladgolubev, thank you for the images!

I tried to set it up but keep getting an error on kadira-rma with mongo db connection although I use the same url as for the other services.

Do you have any idea what it could be?

[run:errors-1min ] 2017-05-26T14:12:33.756+0000 E QUERY [thread1] Error: couldn’t initialize connection to host undefined, address is invalid :
[run:errors-1min ] connect@src/mongo/shell/mongo.js:237:13
[run:errors-1min ] @(connect):1:6
[run:system-3hour ] MongoDB shell version v3.4.4
[run:errors-1min ] exception: connect failed

I’ve successfully got Kadira up and running on a Digital Ocean droplet and am able to login to the UI and everything. I now have just one small issue that I can’t seem to figure out.

The Kadira engine runs on port 11011, however I am unable to access it using the domain that we have set for Kadira, I have to actually use the server IP address.

The app we’re trying to use Kadira with runs on HTTPS, however, I can only get a connection to the engine using HTTP. This causes this error in the dev console and no data showing up in Kadira:

Mixed Content: The page at ‘https://ourapp.com’ was loaded over HTTPS, but requested an insecure XMLHttpRequest endpoint ‘http://ourkadiraserverip:11011/simplentp/sync’. This request has been blocked; the content must be served over HTTPS.

So basically we just need the Kadira engine to be able to be accessed via HTTPS.

Any ideas? Thanks in advance!

Note: The Kadira UI loads over HTTPS just fine.

Try usong a loadbalancer. Not sure about digital ocean, but aws loadbalancers allow port forwarding which enables the port to be 443 ssl externally and for the onstance running kadira 11011

I got the same problem as @kodie and I have an NGINX in front of Kadira . The NGINX configuration is kadira-engine from https://medium.com/@foodfitnesscode/setting-up-kadira-on-a-ubuntu-16-04-server-part-1-a821cdddd1e6

Any ideas?

Thanks @vladgolubev @lampe for great tutorial and docker image.

Got successfully setup Kadira and running,
I’m trying to figure out following two things. Does anybody success on these?

  • changing from free plan to something higher (e.g. business)
  • add users to bypass Oauth login process using Meteor developer acct

I was trying to expose the app to browsers using nginx.
I see the kadira processes running, but cannot access the UI via expose url. The connection times out.

Your work with the Kadira docker images and this docker-compose would be good to merge into https://github.com/kadira-io so we can combine efforts. I’d like to get a fully self-contained Kadira up and running on my development machine but don’t see the source published in your Github account.

cc @rpitt

1 Like

Thk @vladgolubev !
If you use json file for config :

"kadira": { "appId": "your-app-id", "appSecret": "your-app-secret", "options": { "endpoint":"https://domain" } },