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

Che nightly does not start on Windows 10 #3686

Closed
ghost opened this issue Jan 12, 2017 · 34 comments
Closed

Che nightly does not start on Windows 10 #3686

ghost opened this issue Jan 12, 2017 · 34 comments
Assignees
Labels
kind/bug Outline of a bug - must adhere to the bug report template.

Comments

@ghost
Copy link

ghost commented Jan 12, 2017

Syntax used:

docker run -ti -v /c/Users/Codenvy/che-conf:/data -v /var/run/docker.sock:/var/run/docker.sock eclipse/che-cli:nightly start --pull

When starting a workspace, server and agent can connect to each other, but the browser cannot reach workspace agent:

image

For whatever reason, it tries to connect to VM's docker0 network interface IP instead of the VM IP which is 10.0.75.2

Playing with CHE_HOST did not help.

It does not happen with eclipse/che-cli:latest

@ghost ghost added kind/bug Outline of a bug - must adhere to the bug report template. severity/blocker Causes system to crash and be non-recoverable or prevents Che developers from working on Che code. labels Jan 12, 2017
@TylerJewell TylerJewell added this to the 5.0.1 milestone Jan 12, 2017
@TylerJewell
Copy link

@eivantsov - I have the same issue on my Windows 10 Home OS system as well. Confirmed.

@garagatyi
Copy link

@eivantsov Have you tried 5.0.0? nightly now uses 5.1.0, so can you check if it persists on 5.0.0 to identify milestone?

@riuvshin
Copy link
Contributor

reproduced on mac

@TylerJewell
Copy link

@garagatyi - ok with 5.0.0. So this issue is only on nightly - it's not on our tagged versions.

@riuvshin
Copy link
Contributor

@TylerJewell @garagatyi confirmed on mac 5.0.0 tag - works. that means that we will not have this bug in 5.0.1 because we don't cherry-pick those changes.

@riuvshin riuvshin modified the milestones: 5.1.0, 5.0.1 Jan 12, 2017
@TylerJewell TylerJewell removed this from the 5.1.0 milestone Jan 12, 2017
@TylerJewell
Copy link

Great - dropped the milestone marker.

@riuvshin
Copy link
Contributor

oki but we must have this for 5.1.0

@ghost
Copy link
Author

ghost commented Jan 13, 2017

@garagatyi and myself have found the problem. By default CHE_DOCKER_IP_EXTERNAL is identical to CHE_DOCKER_IP which is calculated as IP of docker0 network interface.

So, in CLI we should detect if it's Mac or Windows and set CHE_DOCKER_IP_EXTERNAL to be localhost or VM IP. But since Docker does all the routing itself, localhost is totally ok.

I have also replied here - #3657 (comment)

@skabashnyuk skabashnyuk added sprint/current status/open-for-dev An issue has had its specification reviewed and confirmed. Waiting for an engineer to take it. team/platform status/in-progress This issue has been taken by an engineer and is under active development. and removed status/open-for-dev An issue has had its specification reviewed and confirmed. Waiting for an engineer to take it. sprint/current status/in-progress This issue has been taken by an engineer and is under active development. team/platform labels Jan 13, 2017
@skabashnyuk
Copy link
Contributor

@benoitf @TylerJewell can you take a look if it's possible to fix in CLI?

@riuvshin
Copy link
Contributor

@skabashnyuk are you sure it is CLI issue?

@garagatyi
Copy link

As @eivantsov described we don't set external ip property so it is proper for product to use internal IP in that case. If external IP is set everything works

@TylerJewell
Copy link

Can you explain why this issue does not happen for 5.0 but is happening for nightly?

I don't believe this is a cli issue and instead it is an issue for eclipse/che-server which is where all os and vm detection occurs

@riuvshin
Copy link
Contributor

yeah I have exactly same feeling that this is not CLI issue because it works for 5.0.0 tag

@garagatyi
Copy link

We have changes in code that probably changed something. It was quite complex refactoring. QA team didn't find the problem since it doesn't use non-Linux OSs for QA cycle for now.

Since Che runs in container it is logical that it doesn't detect OS of host system. And CLI sequence can do OS related checks and put appropriate preperties in che.env.

@garagatyi
Copy link

I reopened this issue since fix that @benoitf pushed is not complete. I have needed changes but they are not checked yet.
If you think that fix from @benoitf is enough to make it not blocker you can move this issue to the next milestone

@benoitf
Copy link
Contributor

benoitf commented Jan 17, 2017

@garagatyi I don't see different technical changes in your PR.
Also AFAIK docker che launcher is not maintained.

@garagatyi
Copy link

If launcher is not maintained can you create an issue to remove it? Can you point in that issue what files should be removed. Thanks.

@benoitf
Copy link
Contributor

benoitf commented Jan 17, 2017

@garagatyi AFAIK in the changes you showed,
che.sh is part of the native launch of che (which doesn't work on windows or Mac so it's not related to this issue. (And BTW I think it's gonna be removed when CLI was stable enough) : #3318 (comment)

about che-launcher : #3423 (comment)

@benoitf
Copy link
Contributor

benoitf commented Jan 17, 2017

for the 1st one I would expect it's an issue in che aliases
for the second one it's a refactoring

@garagatyi
Copy link

I just made code behaves as it did before we merged PR with refactoring.
Can you elaborate on what do you want to do? Do you want me to close issue and don't do these changes?

@benoitf
Copy link
Contributor

benoitf commented Jan 17, 2017

no there are interesting doc updates.
Also you should have good reason for the code refactoring.
I'm just saying that the issue is already solved without these nice improvements

@garagatyi
Copy link

garagatyi commented Jan 17, 2017

I would not count it as a real refactoring. I moved methods a bit, but it is just small code cleanup.
And I changed behavior of default server address evaluation strategy to match previous behavior. Unfortunately I didn't notice that it was changed in that PR. So now I just changed it back to no increase support tickets number because of changes in Che behavior.
As I said if issue with Che on Windows and Mac is fixed by your commit you can move this issue to next milestone.
But since this issue is assigned to me and I spent my time on investigation which commit broke Che and why I against closing this issue because of your fix.

@riuvshin
Copy link
Contributor

@benoitf @garagatyi so guys what we are going to do? this is issue is still blocker for 5.1.0. should we remove blocker and move this to next ver after @benoitf changes? or we still wait something for 5.1.0?

@TylerJewell
Copy link

  1. Remove the blocker because the product is usable without @garagatyi fixes.
  2. Drop any milestone
  3. Then let TLs and @garagatyi decide scheduling of other implementation.

@garagatyi - can you please rework the description to describe the work to be done now? It describes as a bug, but now that it's a different kind of issue, so let's just be explicit on what to do now vs. what we had to do before.

@TylerJewell TylerJewell removed this from the 5.1.0 milestone Jan 17, 2017
@TylerJewell TylerJewell added severity/P1 Has a major impact to usage or development of the system. sprint/current and removed severity/blocker Causes system to crash and be non-recoverable or prevents Che developers from working on Che code. labels Jan 17, 2017
@garagatyi garagatyi added the status/in-progress This issue has been taken by an engineer and is under active development. label Jan 17, 2017
@amisevsk
Copy link
Contributor

@garagatyi +1 on your changes. In #3282, I didn't realize that the environment variables were still used to set parameters, and likely the only reason the code worked in 5.0.0 was that LocalDockerInstanceRuntimeInfo was counterintuitively using those env vars to override properties. I only saw this issue now, sorry I couldn't add input earlier.

While it sounds like this is not a blocker for 5.1.0, I think it is still a good change to make, for correctness' sake. Those env vars should have been removed completely when the switch to defining everything in che.properties (and now che.env) was made. Env vars CHE_DOCKER_IP and CHE_DOCKER_IP_EXTERNAL should have the exact same effect as CHE_DOCKER_MACHINE_HOST and CHE_DOCKER_MACHINE_HOST_EXTERNAL did in 5.0.0. Further, this issue likely means that the property che.docker.ip.external did not have an effect in 5.0.0 when CHE_DOCKER_MACHINE_HOST_EXTERNAL was set.

@garagatyi
Copy link

@amisevsk I agree with you. I also didn't notice that.

@garagatyi
Copy link

Should be fixed already

@slemeur slemeur added this to the 5.2.0 milestone Jan 23, 2017
@slemeur slemeur removed severity/P1 Has a major impact to usage or development of the system. sprint/current status/in-progress This issue has been taken by an engineer and is under active development. team/platform labels Jan 23, 2017
@JamesDrummond JamesDrummond removed this from the 5.2.0 milestone Feb 2, 2017
JPinkney pushed a commit to JPinkney/che that referenced this issue Aug 17, 2017
…ed in a refactoring but it has not been updated everywhere (eclipse-che#3753)

Change-Id: I6da2c6f33cc063dda08b953eb2fab16abe4a0c86
Signed-off-by: Florent BENOIT <fbenoit@codenvy.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
kind/bug Outline of a bug - must adhere to the bug report template.
Projects
None yet
Development

No branches or pull requests

8 participants