Tilt: Windows Support

Created on 1 Aug 2019  Â·  18Comments  Â·  Source: tilt-dev/tilt

Is there plan to support Windows through Docker Desktop?

enhancement

Most helpful comment

+1 for windows support.

All 18 comments

All of our Windows users so far have preferred using Tilt on Windows Subsystem for Linux.

Do you want native Windows binaries? I don't think they would be that hard to add; it's just that no one has asked for them yet.

Thank you for the reply. The reason I was curious is I find that WSL feels a little slower running Docker Desktop for Windows than running through a windows terminal. Perhaps I should try minikube on WSL.

If you do happen to create the native Windows binaries I can test out the functionality.

OK, I got a Tilt binary. There were a couple issues:

  • color / emoji detection in the terminal
  • weird flashing in the termbox ux
  • mismatches between container filepaths (which use "/" separators) and host filepaths (which on windows use "C:\path\to\file")

Nothing that requires a big rearchitecture, probably just a lot of small fixes. I think the next steps to proceed are to

  • release Windows binaries as part of the release process, but mark them as "alpha"
  • set up a Windows CI (this seems way harder than i expected)
  • start fixing tests

since the tests should do a pretty good job chasing out the filepath issues.

+1 for windows support.

We should also update our existing docs to include Windows, including possibly a tutorial for getting started running Tilt with WSL.

In Kubernetes > #tilt, davidford describes recent frustrations using Tilt with WSL:

If your kubectl context is set to minikube Tilt will always try to lookup the IP address using minikube ip. This will then throw an error when it doesn't detect the VM (which it won't as it is setup on Windows) and won't continue. I had set DOCKER_HOST etc to point to the Minikube cluster manually prior to running this command and would of liked it to default back when the lookup fails.

If you rename the kubectl context...to something else (e.g. minikube-windows) you get a little further, but then I also got the same issues mentioned in the following:

I resolved the issue...by adding the DOCKER_BUILDKIT=0 environment variable before running tilt up which led to my final issue where I decided to not proceed any further.

Because Tilt didn't detect me using a local environment like minikube, it now always tries to push the built images to a remote repository, but this isn't required for my current setup as the docker host it builds on is actually the minikube cluster. I would of loved an option to disable pushing within the main docker_build function, I didn't want to use the custom build.

Wouldn;t using wsl mean that we now have two vms in our volume mount graph?

windows c: drive > wsl shared > mobyvm/minikube

If instead we had windows binaries it'd just be:

windows c: drive > mobyvm/minikub

I personally don't think that wsl adds much value for the effort required when you're doing all your development inside docker containers anyway.

Ditto to the above. WSL (especially 2) works pretty decently, but it ends up feeling like unnecessary overhead and disconnected. Native binaries would be great.

Native binaries for Windows would be _great_. My own context is working on a product that games studios use (think games-server hosting with many additional selling points).

Most games studios are Windows-first and less likely to be familiar with *nix (or in some cases, even tolerate it). Therefore being able to offer a local workflow that works with Windows native tooling is very advantageous.

I'd be interested to participate in alpha/preview testing, if that is a thing?

There are currently alpha binaries for download on the releases page! https://github.com/windmilleng/tilt/releases

+1

Downloaded the binary and ran tilt up on the sample React project. Booted up without a hitch and hot reloads take ~0.1s. Very good. I'm cautiously optimistic about this one. Thanks guys 😃

Hi all! The next Tilt release (later this week) is our candidate for full windows support. We're still working on documentation on how to install it, and investigating what it would take to manage it with scoop or chocolatey. But all the major example projects should work.

That's great! I was trying out v0.13.5 alpha release, will wait for the release candidate.

As @nicks mentioned, full windows support is now available in the latest release: See https://github.com/tilt-dev/tilt/releases/tag/v0.13.6, in particular: https://github.com/tilt-dev/tilt/releases/download/v0.13.6/tilt.0.13.6.windows.x86_64.zip

cc @joseph-zhong

Great, thank you @victorwuky! We're testing it now, thanks for the quick turnaround!

Great news I'll try it asap
On May 15, 2020, 10:19 -0500, Joseph Zhong notifications@github.com, wrote:

Great, thank you @victorwuky! We're testing it now, thanks for the quick turnaround!
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub, or unsubscribe.

Nick wrote a great blog post if folks want to learn more: https://blog.tilt.dev/2020/05/20/windows-support.html

Was this page helpful?
0 / 5 - 0 ratings

Related issues

ivansantosz picture ivansantosz  Â·  7Comments

qibinlou picture qibinlou  Â·  4Comments

maiamcc picture maiamcc  Â·  7Comments

mnpenner picture mnpenner  Â·  4Comments

david-martyn-ford picture david-martyn-ford  Â·  4Comments