Skip to content
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

added a docker-compose file to the main repo, and an explanation regarding its usage to the docs #306

Closed
wants to merge 1 commit into from

Conversation

de-robat
Copy link

@de-robat de-robat commented Aug 3, 2017

I wan't to provide a docker-compose file to conveniently start a jaeger stack in a docker environment. This PR does resolve #286 as it yields the results of the issues findings.

@CLAassistant
Copy link

CLAassistant commented Aug 3, 2017

CLA assistant check
Thank you for your submission, we really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.
You have signed the CLA already but the status is still pending? Let us recheck it.

@coveralls
Copy link

Coverage Status

Coverage remained the same at 100.0% when pulling 13ac03e on de-robat:master into 464471d on uber:master.

@jpkrohling
Copy link
Contributor

I believe that the most appropriate way would be to create a repository under the Jaeger Tracing organization, like it's done for the OpenShift and Kubernetes templates:
https://github.com/jaegertracing

@de-robat
Copy link
Author

de-robat commented Aug 3, 2017

@jpkrohling That's what i wanted to do as well. I checked back with @yurishkuro . So my original question asked on gitter has been:

Hi Yuri, I've just finished my work on the docker compose file for the following issue: uber/jaeger#286 , right now im trying to figure out what would be the proper approach to contrib the file to the jaeger project. You've asked to add it to the main repo, all the other infrastructure related contribs like kubernates and open shift have been published in an extra organization though. Can't seem to find an answer in the Contrib guidelines, so any hints for me? How would you guys rather want to get the contribution ?

The response was that putting it under /cmd/ in the main repo might be a good idea. But still there are open questions regarding the test integration. I opened this PR mainly to document the advances we made regarding the compose-file an make it accessible to others as well.

So lets continue the discussion of the proper way to contribute it here, to render the decision making process more transparent.

Pardon me for not starting it here in the first place.

@pavolloffay
Copy link
Member

But still there are open questions regarding the test integration

crossdock could extend this compose file. By doing this we don't have to implement any additional tests.

command: /go/bin/agent-linux -collector.host-port=jaeger-collector:14267
jaeger-query:
image: jaegertracing/jaeger-query:0.5
networks:
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is this network required?

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

yep, you need to name the network even if its configuration is basically an empty object. you could configure some stuff here, but we don't need anything beside the defaults. So we are just creating the network with the name we are using above.

Copy link
Author

@de-robat de-robat Aug 3, 2017

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

you probably noticed my comment is intended to be for line 69 :) The correct answer for this line is: the query joins the network to reach the cassandra db as it will inject the name resolving for -cassandra.servers=cassandra

restart: unless-stopped
command: /go/bin/collector-linux -cassandra.servers=cassandra -cassandra.keyspace=jaeger_v1_dc1 -cassandra.connections-per-host 2
jaeger-agent:
image: jaegertracing/jaeger-agent:0.5
Copy link
Member

@yurishkuro yurishkuro Aug 3, 2017

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

given that "compose" is unlikely to be used for production, perhaps latest image would be better here?

@pavolloffay but even with latest I don't think this can be used as a base for crossdock test since the crossdock should build the images from the current source code.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I could simply override image configuration https://docs.docker.com/compose/extends/#adding-and-overriding-configuration.

Or crossdock target could compile images, and run the compose.

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

think it could be altered to do a live build, https://docs.docker.com/compose/compose-file/compose-file-v2/#build for the image on the test infrastructure, but i'm not 100% aware of all build prerequisites for the jaeger components to build. For the purpose of handing it over to people who are interested in trying out the setup with all components (not the standalone way), i'd rather vote for fixed versions, but that would indeed be followed by regular updates. Given the test run properly, than "latest" wouldn't be an issue. But that's a bit out of scope for me. So probably two docker files? Or even more? There is a stack up and coming with ES, and most likely you won't have the agent on the collectors Infrastructure neither. So probably the jagertracing org would indeed be a better fit.

For production environments i'll soon setup a rancher catalog and add it to the rancher repo anyways.

@pavolloffay
Copy link
Member

done in #493

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Jaegertracing with Docker
6 participants