I recommend this post - it took me towards a working XPS13 (bought the Windows edition, wouldn't want to wait;-) in very little time.
But the Docker demon wouldn't run. It has two issues: UDEV sync and NAT, output is:
WARN Udev sync is not supported. This will lead to unexpected behavior, data loss and errors
INFO +job serveapi(unix:///var/run/docker.sock)
INFO Listening for HTTP on unix (/var/run/docker.sock)
INFO +job init_networkdriver()
Unable to enable network bridge NAT: iptables failed: iptables --wait -t nat -I POSTROUTING -s 172.17.42.1/16 ! -o docker0 -j MASQUERADE: iptables v1.4.21: can't initialize iptables table `nat': Table does not exist (do you need to insmod?)
Perhaps iptables or your kernel needs to be upgraded.
(exit status 3)
Now, I'm recompiling the Kernel for NAT support. Any tips about UDEV sync?
The stock mainline kernel from canonical (4.1-rc5 is what I am running) works fine with docker. No special compilation needed.