-
Notifications
You must be signed in to change notification settings - Fork 4.9k
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
Fix dockerd internal port changing on restart #7021
Conversation
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: medyagh The full list of commands accepted by this bot can be found here. The pull request process is described here
Needs approval from an approver in each of these files:
Approvers can indicate their approval by writing |
Codecov Report
@@ Coverage Diff @@
## master #7021 +/- ##
=======================================
Coverage 37.24% 37.24%
=======================================
Files 145 145
Lines 9115 9115
=======================================
Hits 3395 3395
Misses 5296 5296
Partials 424 424
|
/ok-to-test |
Error: running mkcmp: exit status 1 |
All Times minikube: [ 61.252995 62.238452 59.258249] Average minikube: 60.916565 Averages Time Per Log
|
All Times minikube: [ 63.674208 63.763663 66.397892] Average Minikube (PR 7021): 62.578092 Averages Time Per Log
|
All Times minikube: [ 63.282492 62.515837 60.603508] Average Minikube (PR 7021): 62.315502 Averages Time Per Log
|
All Times minikube: [ 62.347032 59.214839 61.901233] Average minikube: 61.154368 Averages Time Per Log
|
closes #7017
Gotcha 0 : driver.GetURL() is a big Lie !
GetURL in our driver is a very dirty hack, and has nothing to do with our Machine's URL it is just something to satify libmachine that wants to find out the insalled docker inside the node.
so I had to make kic driver follow hyperkit driver and make GetURL to return a BIG fat lie !
and later replace it in setupKubeConfig function in start ...very hacky and dirty
but till we come up with a solution for machine driver. that is the solution.
related: https://github.com/docker/machine/blob/master/libmachine/provision/utils.go#L159_L175
Gotcha 1 : Daemon reload
That was the ps aux params for docker in kic driver:
and this was for VM
after doing daemon-reload the KIC one also picked up the right settings.
Gotcha 2: Cert pining was missing 127.0.01
when dockerd for kic has the right parameters (same as vm) it compains about cert not having the same IP
but the cert is generated by libmachine. so I had to turn of the tls verify for docker inside minikube
for that I had to Fork libmachine and add 127.0.0.1 in addition to "localhost" to the certs
I created a PR in libmachine, till that PR gets merged, we are gonna use my fork because we need to release https://github.com/machine-drivers/machine/pull/28/files
@afbjorklund might be able to help
Gotcha 3: Libmachuine expects Docker Port to be 2376
it is poiintless to have dockerport in a variable, because of libmachine it always has to be "2376"
so I hard coded it for less confusing debugging for next person. to save some of their hair on their head.