docker-machine-kvm icon indicating copy to clipboard operation
docker-machine-kvm copied to clipboard

Configurable connection URI

Open tn-osimis opened this issue 8 years ago • 3 comments

Sifting through the code I gather the connection URI is not configurable.

const (
        connectionString   = "qemu:///system"
func (d *Driver) getConn() (*libvirt.Connect, error) {
        if d.conn == nil {
                conn, err := libvirt.NewConnect(connectionString)

I need to use a different URI (e.g. qemu:///session). I think a driver parameter would be appropriate here. Alternatively, passing an empty string to libvirt.NewConnect would have libvirt select the default connection and let the user configure it themselves.

func NewConnect(uri string) (*Connect, error) {
        var cUri *C.char
        if uri != "" {
                cUri = C.CString(uri)
                defer C.free(unsafe.Pointer(cUri))
        }
        ptr := C.virConnectOpen(cUri)

virConnectOpen: https://libvirt.org/html/libvirt-libvirt-host.html#virConnectOpen

tn-osimis avatar Mar 14 '17 14:03 tn-osimis

I totally agree with this. That's now easy to have user QEMU thanks to qemu-bridge-helper. We need only two params : the connection string (use the session) and the bridge to use (instead of a libvirt network).

This will avoid a password prompt and make it more secure. Also, this will help isolate dév env in dév home.

🆙 👍 Thanks for the report.

@dhiltgen do you want help on this topic ?

bersace avatar Jun 16 '17 07:06 bersace

Actually, in my setup, I simply use the same bridge as for my lxc containers:

   <interface type='bridge'>
     <mac address='52:54:00:a5:a2:78'/>
     <source bridge='lxcbr0'/>
     <model type='rtl8139'/>
     <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/>
   </interface>
   <serial type='pty'>

Here is how i setup qemu-bridge-helpers on debian: https://github.com/bersace/dotfiles/blob/master/virtualisation.yml#L58-L79

bersace avatar Jun 16 '17 07:06 bersace

addressed by PR https://github.com/dhiltgen/docker-machine-kvm/pull/63

karmab avatar Nov 07 '17 14:11 karmab