cf webui - cloudfoundry user group dach

16
Zürcher Fachhochschule CF WebUI ICCLab Zurich University of Applied Sciences

Upload: lidia-fernandez-garces

Post on 11-Apr-2017

173 views

Category:

Software


0 download

TRANSCRIPT

Page 1: CF WebUI - CloudFoundry User Group DACH

Zürcher Fachhochschule

CF WebUI

ICCLabZurich University of Applied Sciences

Page 2: CF WebUI - CloudFoundry User Group DACH

Zürcher Fachhochschule

What is CF WebUI

Single web page front-end for Cloud Foundry

Based on Cloud Foundry API

Open Source

Page 3: CF WebUI - CloudFoundry User Group DACH

Zürcher Fachhochschule

How we developed CF WebUI

Bootstrap

AngularJS

Nginx

Page 4: CF WebUI - CloudFoundry User Group DACH

Zürcher Fachhochschule

Challenges

Same Origin Policy

API Features

Page 5: CF WebUI - CloudFoundry User Group DACH

Zürcher Fachhochschule

Same Origin Policy

Problem:• Same Origin Policy in browser

Two solutions: • Cross-Origin Resource Sharing (CORS)• Proxy

Page 6: CF WebUI - CloudFoundry User Group DACH

Zürcher Fachhochschule

Same Origin Policy using CORS

Page 7: CF WebUI - CloudFoundry User Group DACH

Zürcher Fachhochschule

Same Origin Policy using proxy

Page 8: CF WebUI - CloudFoundry User Group DACH

Zürcher Fachhochschule

Proxy Implementations

First version: PHP Proxy• Based on cURL• Buildpack: PHPSecond version• Based on reverse proxy (nginx)• Buildpack: staticfile-buildpack

Page 9: CF WebUI - CloudFoundry User Group DACH

Zürcher Fachhochschule

Proxy - First Version

Page 10: CF WebUI - CloudFoundry User Group DACH

Zürcher Fachhochschule

Proxy - Second Version

Page 11: CF WebUI - CloudFoundry User Group DACH

Zürcher Fachhochschule

API Endpoint

‘List all apps’

Not showing crashed ones

Alternative solution: compare running instances

Page 12: CF WebUI - CloudFoundry User Group DACH

Zürcher Fachhochschule

API Endpoint

Page 13: CF WebUI - CloudFoundry User Group DACH

Zürcher Fachhochschule

API Endpoint

Page 14: CF WebUI - CloudFoundry User Group DACH

Zürcher Fachhochschule

How to configure CF WebUI - manifest.yml

---applications:- name: cf-webui memory: 64M host: console-cf-webui-${random-word} path: ./build buildpack: https://github.com/cloudfoundry/staticfile-buildpack env:

API_ENDPOINT: https://api.run.pivotal.io# Use Google DNS by defaultNGINX_RESOLVER: 8.8.8.8#Enforce https is used (using x_forwarded_proto check). Default: enabledFORCE_HTTPS: 1

Page 15: CF WebUI - CloudFoundry User Group DACH

Zürcher Fachhochschule

Roadmap

Upcoming Features:• Show applications logs• Create/deploy new application• Update for Cloud Foundry API v3

Update to AngularJS 2

Page 16: CF WebUI - CloudFoundry User Group DACH

Zürcher Fachhochschule

Contribute & Questions

Questions?

Thank you!

https://icclab.github.io/cf-webui/https://github.com/icclab/cf-webuihttps://blog.zhaw.ch/icclab/