Is docker-machine a requirement?

I use linux (ubuntu gnome latest) and I was thinking I don't need any docker-machine in order to use docker only locally on my computer. However I found the following lines in the idea.log. It looks like they are only INFO, but they look weird, since RM is trying to find files even if it does not have any docker-machine path in the settings. 

Since I have quite a lot of troubles with the docker plugin I would like to exclude any possible culprit: is docker-machine a requirement or can I safely ignore the lines in the log?

If I can ignore them, then wouldn't be better to patch RM so in case of missing docker-machine in the settings it would just skip that part?


2017-12-03 07:59:47,984 [ 437551] INFO - figurations.GeneralCommandLine - Cannot run program "docker-machine": error=2, No such file or directory
java.io.IOException: Cannot run program "docker-machine": error=2, No such file or directory
at java.lang.ProcessBuilder.start(ProcessBuilder.java:1048)
at com.intellij.execution.configurations.GeneralCommandLine.startProcess(GeneralCommandLine.java:415)
at com.intellij.execution.configurations.GeneralCommandLine.createProcess(GeneralCommandLine.java:382)
at com.intellij.execution.process.OSProcessHandler.<init>(OSProcessHandler.java:44)
at com.intellij.execution.process.CapturingProcessHandler.<init>(CapturingProcessHandler.java:38)
at com.intellij.docker.machine.DockerMachine.exec(DockerMachine.java:99)
at com.intellij.docker.machine.DockerMachine.version(DockerMachine.java:251)
at com.intellij.docker.machine.DockerMachineUtil.checkValidExecutable(DockerMachineUtil.java:70)
at com.intellij.docker.machine.DockerMachineUtil.tryFindDockerMachineExecutable(DockerMachineUtil.java:40)
at com.intellij.docker.DockerSettings.getDockerMachinePath(DockerSettings.java:50)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at com.intellij.util.xmlb.PropertyAccessor.read(PropertyAccessor.java:59)
at com.intellij.util.xmlb.SkipDefaultsSerializationFilter.equal(SkipDefaultsSerializationFilter.java:32)
at com.intellij.util.xmlb.BeanBinding.serializeInto(BeanBinding.java:96)
at com.intellij.util.xmlb.BeanBinding.serialize(BeanBinding.java:80)
at com.intellij.configurationStore.XmlSerializer.serialize(xmlSerializer.kt:55)
at com.intellij.configurationStore.XmlSerializer.serialize$default(xmlSerializer.kt:49)
at com.intellij.configurationStore.SaveSessionBaseKt.serializeState(SaveSessionBase.kt:57)
at com.intellij.configurationStore.SaveSessionBase.setState(SaveSessionBase.kt:29)
at com.intellij.configurationStore.StateStorageManagerImpl$startExternalization$1.setState(StateStorageManagerImpl.kt:434)
at com.intellij.configurationStore.ComponentStoreImpl.a(ComponentStoreImpl.kt:228)
at com.intellij.configurationStore.ComponentStoreImpl.save(ComponentStoreImpl.kt:158)
at com.intellij.openapi.components.impl.stores.StoreUtil.save(StoreUtil.java:49)
at com.intellij.openapi.application.impl.ApplicationImpl.saveSettings(ApplicationImpl.java:1401)
at com.intellij.openapi.components.impl.stores.StoreUtil.saveDocumentsAndProjectsAndApp(StoreUtil.java:129)
at com.intellij.openapi.application.impl.ApplicationImpl.saveAll(ApplicationImpl.java:1413)
at com.intellij.ide.SaveAndSyncHandlerImpl.saveProjectsAndDocuments(SaveAndSyncHandlerImpl.java:126)
at com.intellij.ide.SaveAndSyncHandlerImpl$2.a(SaveAndSyncHandlerImpl.java:94)
at com.intellij.openapi.application.TransactionGuardImpl.a(TransactionGuardImpl.java:88)
at com.intellij.openapi.application.TransactionGuardImpl.a(TransactionGuardImpl.java:111)
at com.intellij.openapi.application.TransactionGuardImpl.submitTransaction(TransactionGuardImpl.java:120)
at com.intellij.openapi.application.TransactionGuard.submitTransaction(TransactionGuard.java:122)
at com.intellij.ide.SaveAndSyncHandlerImpl$2.onFrameDeactivated(SaveAndSyncHandlerImpl.java:92)
at com.intellij.ide.FrameStateManagerImpl.b(FrameStateManagerImpl.java:84)
at com.intellij.ide.FrameStateManagerImpl.access$500(FrameStateManagerImpl.java:32)
at com.intellij.ide.FrameStateManagerImpl$2.a(FrameStateManagerImpl.java:70)
at com.intellij.util.concurrency.QueueProcessor.runSafely(QueueProcessor.java:246)
at com.intellij.util.Alarm$Request.runSafely(Alarm.java:417)
at com.intellij.util.Alarm$Request.access$700(Alarm.java:344)
at com.intellij.util.Alarm$Request$1.run(Alarm.java:384)
at com.intellij.openapi.application.TransactionGuardImpl$2.run(TransactionGuardImpl.java:315)
at com.intellij.openapi.application.impl.LaterInvocator$FlushQueue.a(LaterInvocator.java:424)
at com.intellij.openapi.application.impl.LaterInvocator$FlushQueue.run(LaterInvocator.java:407)
at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:311)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:762)
at java.awt.EventQueue.access$500(EventQueue.java:98)
at java.awt.EventQueue$3.run(EventQueue.java:715)
at java.awt.EventQueue$3.run(EventQueue.java:709)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:80)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:732)
at com.intellij.ide.IdeEventQueue.f(IdeEventQueue.java:822)
at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.java:650)
at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:366)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)
Caused by: java.io.IOException: error=2, No such file or directory
at java.lang.UNIXProcess.forkAndExec(Native Method)
at java.lang.UNIXProcess.<init>(UNIXProcess.java:247)
at java.lang.ProcessImpl.start(ProcessImpl.java:134)
at java.lang.ProcessBuilder.start(ProcessBuilder.java:1029)
... 62 more
2017-12-03 07:59:47,987 [ 437554] INFO - figurations.GeneralCommandLine - Cannot run program "docker-machine": error=2, No such file or directory
java.io.IOException: Cannot run program "docker-machine": error=2, No such file or directory
at java.lang.ProcessBuilder.start(ProcessBuilder.java:1048)
at com.intellij.execution.configurations.GeneralCommandLine.startProcess(GeneralCommandLine.java:415)
at com.intellij.execution.configurations.GeneralCommandLine.createProcess(GeneralCommandLine.java:382)
at com.intellij.execution.process.OSProcessHandler.<init>(OSProcessHandler.java:44)
at com.intellij.execution.process.CapturingProcessHandler.<init>(CapturingProcessHandler.java:38)
at com.intellij.docker.machine.DockerMachine.exec(DockerMachine.java:99)
at com.intellij.docker.machine.DockerMachine.version(DockerMachine.java:251)
at com.intellij.docker.machine.DockerMachineUtil.checkValidExecutable(DockerMachineUtil.java:70)
at com.intellij.docker.machine.DockerMachineUtil.tryFindDockerMachineExecutable(DockerMachineUtil.java:40)
at com.intellij.docker.DockerSettings.getDockerMachinePath(DockerSettings.java:50)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at com.intellij.util.xmlb.PropertyAccessor.read(PropertyAccessor.java:59)
at com.intellij.util.xmlb.SkipDefaultsSerializationFilter.equal(SkipDefaultsSerializationFilter.java:32)
at com.intellij.util.xmlb.BeanBinding.serializeInto(BeanBinding.java:96)
at com.intellij.util.xmlb.BeanBinding.serialize(BeanBinding.java:80)
at com.intellij.configurationStore.XmlSerializer.serialize(xmlSerializer.kt:55)
at com.intellij.configurationStore.XmlSerializer.serialize$default(xmlSerializer.kt:49)
at com.intellij.configurationStore.SaveSessionBaseKt.serializeState(SaveSessionBase.kt:57)
at com.intellij.configurationStore.SaveSessionBase.setState(SaveSessionBase.kt:29)
at com.intellij.configurationStore.StateStorageManagerImpl$startExternalization$1.setState(StateStorageManagerImpl.kt:434)
at com.intellij.configurationStore.ComponentStoreImpl.a(ComponentStoreImpl.kt:228)
at com.intellij.configurationStore.ComponentStoreImpl.save(ComponentStoreImpl.kt:158)
at com.intellij.openapi.components.impl.stores.StoreUtil.save(StoreUtil.java:49)
at com.intellij.openapi.application.impl.ApplicationImpl.saveSettings(ApplicationImpl.java:1401)
at com.intellij.openapi.components.impl.stores.StoreUtil.saveDocumentsAndProjectsAndApp(StoreUtil.java:129)
at com.intellij.openapi.application.impl.ApplicationImpl.saveAll(ApplicationImpl.java:1413)
at com.intellij.ide.SaveAndSyncHandlerImpl.saveProjectsAndDocuments(SaveAndSyncHandlerImpl.java:126)
at com.intellij.ide.SaveAndSyncHandlerImpl$2.a(SaveAndSyncHandlerImpl.java:94)
at com.intellij.openapi.application.TransactionGuardImpl.a(TransactionGuardImpl.java:88)
at com.intellij.openapi.application.TransactionGuardImpl.a(TransactionGuardImpl.java:111)
at com.intellij.openapi.application.TransactionGuardImpl.submitTransaction(TransactionGuardImpl.java:120)
at com.intellij.openapi.application.TransactionGuard.submitTransaction(TransactionGuard.java:122)
at com.intellij.ide.SaveAndSyncHandlerImpl$2.onFrameDeactivated(SaveAndSyncHandlerImpl.java:92)
at com.intellij.ide.FrameStateManagerImpl.b(FrameStateManagerImpl.java:84)
at com.intellij.ide.FrameStateManagerImpl.access$500(FrameStateManagerImpl.java:32)
at com.intellij.ide.FrameStateManagerImpl$2.a(FrameStateManagerImpl.java:70)
at com.intellij.util.concurrency.QueueProcessor.runSafely(QueueProcessor.java:246)
at com.intellij.util.Alarm$Request.runSafely(Alarm.java:417)
at com.intellij.util.Alarm$Request.access$700(Alarm.java:344)
at com.intellij.util.Alarm$Request$1.run(Alarm.java:384)
at com.intellij.openapi.application.TransactionGuardImpl$2.run(TransactionGuardImpl.java:315)
at com.intellij.openapi.application.impl.LaterInvocator$FlushQueue.a(LaterInvocator.java:424)
at com.intellij.openapi.application.impl.LaterInvocator$FlushQueue.run(LaterInvocator.java:407)
at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:311)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:762)
at java.awt.EventQueue.access$500(EventQueue.java:98)
at java.awt.EventQueue$3.run(EventQueue.java:715)
at java.awt.EventQueue$3.run(EventQueue.java:709)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:80)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:732)
at com.intellij.ide.IdeEventQueue.f(IdeEventQueue.java:822)
at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.java:650)
at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:366)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)
Caused by: java.io.IOException: error=2, No such file or directory
at java.lang.UNIXProcess.forkAndExec(Native Method)
at java.lang.UNIXProcess.<init>(UNIXProcess.java:247)
at java.lang.ProcessImpl.start(ProcessImpl.java:134)
at java.lang.ProcessBuilder.start(ProcessBuilder.java:1029)
... 62 more

6 comments
Comment actions Permalink

Under Preferences -> Build, Execution, Deployment -> Docker, how have you set "Connect to Docker daemon with:"?

0
Comment actions Permalink

Crazy.  I can't imagine why it mentions docker-machine at all! I find it odd that the Linux build of RM is even aware of docker-machine!

0
Comment actions Permalink

Domizio, 

IDE just check if docker-machine is installed to initialise settings(Settings | Docker| Tools). I agree that it could be annoying, but nothing dangerous for IDE. And we cannot switch off this log:(

 


). 

0
Comment actions Permalink

 

Is that a sort of attempt to be smart and filling in the field on behalf of the user at application startup? Then maybe my log is full of that entries because I restarted the app so many times? If that is the case there is no problem: I just got suspicious because I got a few problem with the docker plugin and I wanted to rule out any possibly related problem. Thanks!

0
Comment actions Permalink

That configuration section could use some hints... I am dumbfounded too about why is docker-machine REQUIRED at all on Linux.

0

Please sign in to leave a comment.