microservices-demo / front-end

Front-end application for ALL the microservices
Apache License 2.0
79 stars 2.25k forks source link

front-end index.html not showing images and login is not functional properly #7

Open rgtoronto opened 8 years ago

rgtoronto commented 8 years ago

We are using kubernetes to deploy sock shop applications, and expose all applications as services.

from front-end index.html, it didn't show the complete web page with missing all the images, and when trying to login with demo/demo credential, it also say not authorized.

We also tried to clone the front-end, deployed to local IIS, it shows the same with missing image, and exact same behavior that we could right click on empty image to "saveas" to physical machine.

could some help with this, and kindly provide ideas, solutions?

idcrosby commented 8 years ago

We have just recently re-organized the repo (actually splitting it out into multiple repos) and are currently working on improving the documentation.

For deploying the full application, the current documentation is here: https://github.com/microservices-demo/microservices-demo/tree/master/deploy

Sounds like in your case the catalogue service did not get deployed or has issues.

Can you:

1) Verify that all the services (specifically catalogue and catalogue-db) are running? 2) Paste any errors from the container logs for the front-end service?

rgtoronto commented 8 years ago

Hi idcrosby,

Thanks for reply, here is the logs for catalogue, and I didn't see there is catalogue-db service running, basically we deployed using wholeWeaveDemo.yaml using kuberctl.

kubectl logs catalogue-1143589911-h1m6p

images: "./images/" Abs(images): "/images" () Getwd: "/" () ls: ["images/WAT.jpg" "images/WAT2.jpg" "images/bit_of_leg_1.jpeg" "images/bit_of_leg_2.jpeg" "images/catsocks.jpg" "images/catsocks2.jpg" "images/classic.jpg" "images/classic2.jpg" "images/colourful_socks.jpg" "images/cross_1.jpeg" "images/cross_2.jpeg" "images/holy_1.jpeg" "images/holy_2.jpeg" "images/holy_3.jpeg" "images/puma_1.jpeg" "images/puma_2.jpeg" "images/rugby_socks.jpg" "images/sock.jpeg" "images/youtube_1.jpeg" "images/youtube_2.jpeg"] ts=2016-08-19T20:26:27Z caller=main.go:73 transport=HTTP port=80

logs for front-end:

kubectl logs front-end-2855355613-48yxu

weave-demo-frontend@0.0.1 start /usr/src/app node server.js

Warning: connect.session() MemoryStore is not designed for a production environment, as it will leak memory, and will not scale past a single process. production App now running on port 8079

Please let me know if we missed any steps, or any info you think will help we would like to provide.

Thanks.

idcrosby commented 8 years ago

The wholeWeaveDemo.yaml file had not been updated with the new catalogue-db service. This has been fixed now. I have tested this out locally now and it is working for me. Please let me know if this solves your issue.

rgtoronto commented 8 years ago

I have tried with updated wholeWeaveDemo.yaml, deploy applications and services with kubernetes, could see catalogue-db is now running as service, but still show me the same UI without any images showing. seems the services somehow cannot talk to each, should we modify the yaml file, passing variable to make this work? or just deploy with what we get from git? the steps we are using is:

  1. have kubernetes running
  2. using kubectl to create pod with wholeWeaveDemo.html
  3. open frontend service page from kube proxy it suppose to showing full pages whereas all images was not showing, and cannot do login action

could you share your steps that I could try?

idcrosby commented 8 years ago

I will look into reproducing this setup. Although one issue we ran into in setting up our own cluster was that we required installing Weave Net (https://github.com/microservices-demo/microservices-demo/blob/master/docs/create-staging-environment.md#installing-weave) otherwise we also had communication issues. So this may solve your issue, but I will also try to reproduce this.

rgtoronto commented 8 years ago

we have kube-dns setup, would this work same way as Weave Net to provide the communication between services?

idcrosby commented 8 years ago

For us (at least on staging) we needed Weave in addition to kube-dns

rgtoronto commented 8 years ago

instead of Weave Net, we are using flannel, we tried the container network works fine, any other tips we could still try?