Posted on: 2019-02-17
Lando (devwithlando.io) is an open source tool for developers to easily build development environments that mimic a production server.
As Lando is a cross-platform tool built upon Docker (docker.com), this allows teams on any operating system (OSX, Windows, and Linux) to quickly share and develop on the same environment.
One massive disadvantage of Lando I've had for Windows developers is its requirement of Docker for Windows.
Docker for Windows can only run on Windows 10 64bit: Pro, Enterprise or Education (1607 Anniversary Update, Build 14393 or later).
If the developer computer meets these requirements it also requires to have Hyper-V enabled. Enabling Hyper-V breaks all other virtualisation on the host operating system.
Due to these two points, it can cause issues when trying to use Lando on a Windows system that is not a supported version,
or requires virtualisation (other than a Hyper-V VM) for other development work.
Delving deep in the source code of Lando has found obscure configuration options that can allow it to "unofficially" work using Docker Toolbox.
This method will most likely not be supported by the developers of Lando at all, it may be broken or removed in later releases.
Hopefully, the devs at Lando will see the benefits to Windows developers that don't support the minimum requirements or requires virtualisation other than Hyper-V and officially support and document this method.
Lando has a global config file located in C:\Users\myuser\.lando\config.yml
(replace "myuser" with the developer's windows username).
If the config file does not exist it can be created.
This is an example of the Lando global config.yml file:
dockerBin: "C:\\Program Files\\Docker Toolbox\\docker.exe" composeBin: "C:\\Program Files\\Docker Toolbox\\docker-compose.exe" engineConfig: socketPath: null host: 192.168.99.100 port: 2376 certPath: "C:\\Users\\myuser\\.docker\\machine\\machines\\default\\"
The dockerBin
and composeBin
configuration values are set to the default install location.
If the Docker Toolbox install location has been changed, it's easy to find the location using this command: where docker
.
The engine config in most cases will work by default. These values can be found using the docker-machine config default
command.
The engineConfig host can be found in the tcp url with the port.
The command also outputs tls certs, using these extract the path and enter it as the certPath
.