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

Cannot start multiple Eclipse Che containers on the same server due (maybe) to ports overlapping. #4130

Closed
tequa opened this issue Feb 13, 2017 · 6 comments
Labels
kind/question Questions that haven't been identified as being feature requests or bugs.

Comments

@tequa
Copy link

tequa commented Feb 13, 2017

After the new Eclipse Che update I just wanted to test out multiple Eclipse Che containers on the same server. The problem is that whenever I start a new container on a different port, the container on the first port receives a SIGTERM. ("Received SIGTERM. Stopping Che server running on localhost:$port... A valid shutdown command was received via the shutdown port"). This container is then shut down and removed.

Here's the command I'm using:

docker run -it --rm -e CHE_PORT=$PORT -v $pathtodata:/data -v $pathtoche:/che -v /var/run/docker.sock:/var/run/docker.sock eclipse/che:latest start

I use different $pathtodata and $pathtoche folders for each new Che container I try to run. The new instance always starts successfully and is mapped to the correct port. HOWEVER, what I think is the issue is that the ports of the che container always include both the port I specified as well as the 8000 and 8080 ports. For example, after I started a container on port 8181:

Container: che-8181
Ports: 8000/tcp, 8080/tcp, 0.0.0.0:8181->8181/tcp

and when I start a container on port 8080:
Container: che-8080
Ports: 8000/tcp, 0.0.0.0:8080->8080/tcp

Why are 8000 and 8080 included here? I can include the log but I don't think it contains any pertinent information besides the two line shutdown protocol mentioned above.

@TylerJewell
Copy link

Can you try running the nightly version, please? There was a small bug in the multi-container execution that was causing containers to terminate one another and it was solved in this PR - #4006.

On another note, why are you mounting :/che? That is not a valid mount that we accept - did you mean :/repo?

docker run -it --rm -e CHE_PORT=$PORT -v $pathtodata:/data -v /var/run/docker.sock:/var/run/docker.sock eclipse/che:nightly start

@TylerJewell TylerJewell added the kind/question Questions that haven't been identified as being feature requests or bugs. label Feb 13, 2017
@tequa
Copy link
Author

tequa commented Feb 14, 2017

The nightly version worked perfectly, thank you. I was using the M3 build previously and that was a valid mount (although I may have just been duplicating files from the data folders). Thanks for your help once again.

@tequa tequa closed this as completed Feb 14, 2017
@tequa
Copy link
Author

tequa commented Feb 14, 2017

Sorry, one more thing. I'm now remember why we were using M3 in the first place - with the latest and nightly builds, when I start a workspace, there's a problem with GET requests to the 30,000-40,000 ports, and results in the client aborting connection. My EC2 instance allows all inbound traffic.

It might work to create new DockerFiles and recipes to expose these ports - but this doesn't explain why the same recipes and and workspaces worked on M3 but not on the latest and nightly builds.

@tequa tequa reopened this Feb 14, 2017
@tequa
Copy link
Author

tequa commented Feb 14, 2017

M8** build, NOT M3

@TylerJewell
Copy link

I think the original issue has been resolved. I am not really understanding the new issue you are talking about. Maybe you should open a ticket around what was done and how to reproduce it. But the only thing that can really describe the issue you are having is port blockage or Docker configuration. Running multiple containers shouldn't get in the way of that.

@tequa
Copy link
Author

tequa commented Feb 15, 2017

Thanks - The problem was that I didn't have CHE_HOST set correctly as my EC2's public DNS. It had nothing to do with the Che build.

Everything's working fine now except for an eclipse/che:nightly-only workspace error. The workspace won't start because che can't find "$path/che:$WSNAME", when it should be looking for "$path/che/$WSNAME". But if I tunnel my AWS server to localhost on my machine, it looks for the latter correct path and works fine. Furthermore, this issue doesn't happen with the eclipse/che:latest build.

I'm pretty sure this is a "me" problem and I just wanted to log it - don't worry about getting back to me. If I get stuck I'll file another ticket with reproduction steps and logs like you said.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
kind/question Questions that haven't been identified as being feature requests or bugs.
Projects
None yet
Development

No branches or pull requests

2 participants