-
Notifications
You must be signed in to change notification settings - Fork 49
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add docker compose support #217
Add docker compose support #217
Conversation
Signed-off-by: Tim Callaghan <[email protected]>
Update dev docs with information on defining a new platform Signed-off-by: Tim Callaghan <[email protected]>
Signed-off-by: Tim Callaghan <[email protected]>
b879936
to
e93369b
Compare
…support # Conflicts: # cmd/webserver.go # pkg/instances/instances.go
Hi @berndverst and @artursouza - I'd love to work through the process of getting this approved and merged. Do either of you have any capacity to review? This is my first time using Golang so I'd really appreciate a review and guidance on anything that can be made better 😄 |
status? |
Any news on this? I think is really helpful to see the dashboard in this environment |
1 similar comment
Any news on this? I think is really helpful to see the dashboard in this environment |
Signed-off-by: Artur Souza <[email protected]>
Signed-off-by: Artur Souza <[email protected]>
Signed-off-by: Artur Souza <[email protected]>
Signed-off-by: Artur Souza <[email protected]>
57b2731
to
773de50
Compare
Codecov Report
@@ Coverage Diff @@
## master #217 +/- ##
==========================================
- Coverage 14.02% 10.45% -3.57%
==========================================
Files 7 7
Lines 492 660 +168
==========================================
Hits 69 69
- Misses 417 585 +168
Partials 6 6
Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here. |
Woo thanks for taking a look at this 🙇 |
Please, submit a new PR. We will merge this one. |
I have a question about it because I cannot setup it properly or it does not work properly (according to readme.md file) What I did: 1. I user EShopOnDapr repository https://github.com/dotnet-architecture/eShopOnDapr Code what I added to docker-compose.yml file (copy of dapr-dashboard from readme.md file + few small changes related to files paths):
3. Ran the solution. All DAPR configuration files and docker-compose.yml file were copied to container, so all looks good at this point. HealthCheck looks good and DAPR is healthy for all services: DAPR Dashboard components looks good: But there are no applications: This is what api/version API returns:
And what I have in DAPR Dashboard container logs: I tested DAPR Dashboard with daprio/dapr v1.8.0 v1.9.4 v1.10.4 and results were the same - no applications at all. Have I done something wrong? |
Hi @Mamotchenko - thanks for the very detailed report!
Nope, not at all - turns out when I originally created the PR the lib that we're using to load and parse the docker compose file wasn't particularly strict about certain aspects of the compose file. It appears that the lib has been updated and now enforces some stricter constraints - especially one relating to being able to determine the "name" of the compose file, and that in turn requires that the Environment configuration param be set to non-nil. I recently discovered exactly this bug during the process of writing test coverage, which I've fixed - see https://github.com/dapr/dashboard/pull/252/files#diff-c42e35179b901209bf32a2f7bb15b863e042304762b027b8ea7e81ec8d236bd2 Once the test coverage PR (and bug fix) is approved and merged I think this will solve your issue 🤞 FYI @artursouza - the code coverage PR needs to be merged to make this actually work with the latest libs we're using. |
Addresses #172
Adds support for running Dapr Dashboard inside a docker compose network.
Configuration and Component files are bind mounted to the dashboard container and parsed using similar techniques to the Standalone platform type.
Enumeration of daprd services is done by parsing the docker-compose.yml file and looking for daprd image references.
Metadata fetching is done via first resolving the daprd service location on the docker compose network (using mDNS Dapr component), and then fetching. Consideration has also been given to the case when the daprd service is protected via an API token.
Readme has been updated with instructions on how to target this new platform type.