--- description: How to install Docker Machine keywords: machine, orchestration, install, installation, docker, documentation, uninstall Docker Machine, uninstall title: Install Docker Machine --- Install Docker Machine binaries by following the instructions in the following section. You can find the latest versions of the binaries on the [docker/machine release page](https://github.com/docker/machine/releases/){: target="_blank" rel="noopener" class="_" } on GitHub. ## Install Docker Machine 1. Install [Docker](../engine/install/index.md){: target="_blank" rel="noopener" class="_" }. 2. Download the Docker Machine binary and extract it to your PATH. If you are running **macOS**: ```console $ base=https://github.com/docker/machine/releases/download/v{{site.machine_version}} \ && curl -L $base/docker-machine-$(uname -s)-$(uname -m) >/usr/local/bin/docker-machine \ && chmod +x /usr/local/bin/docker-machine ``` If you are running **Linux**: ```console $ base=https://github.com/docker/machine/releases/download/v{{site.machine_version}} \ && curl -L $base/docker-machine-$(uname -s)-$(uname -m) >/tmp/docker-machine \ && sudo mv /tmp/docker-machine /usr/local/bin/docker-machine \ && chmod +x /usr/local/bin/docker-machine ``` If you are running **Windows** with [Git BASH](https://git-for-windows.github.io/){: target="_blank" rel="noopener" class="_"}: ```console $ base=https://github.com/docker/machine/releases/download/v{{site.machine_version}} \ && mkdir -p "$HOME/bin" \ && curl -L $base/docker-machine-Windows-x86_64.exe > "$HOME/bin/docker-machine.exe" \ && chmod +x "$HOME/bin/docker-machine.exe" ``` > The above command works on Windows only if you use a terminal emulator such as [Git BASH](https://git-for-windows.github.io/){: target="_blank" rel="noopener" class="_"}, which supports Linux commands like `chmod`. {: .important} Otherwise, download one of the releases from the [docker/machine release page](https://github.com/docker/machine/releases/){: target="_blank" rel="noopener" class="_" } directly. 3. Check the installation by displaying the Machine version: ```console $ docker-machine version docker-machine version {{site.machine_version}}, build 9371605 ``` ## Install bash completion scripts The Machine repository supplies several `bash` scripts that add features such as: - command completion - a function that displays the active machine in your shell prompt - a function wrapper that adds a `docker-machine use` subcommand to switch the active machine Confirm the version and save scripts to `/etc/bash_completion.d` or `/usr/local/etc/bash_completion.d`: ```bash base=https://raw.githubusercontent.com/docker/machine/v{{site.machine_version}} for i in docker-machine-prompt.bash docker-machine-wrapper.bash docker-machine.bash do sudo wget "$base/contrib/completion/bash/${i}" -P /etc/bash_completion.d done ``` Then you need to run `source /etc/bash_completion.d/docker-machine-prompt.bash` in your bash terminal to tell your setup where it can find the file `docker-machine-prompt.bash` that you previously downloaded. To enable the `docker-machine` shell prompt, add `$(__docker_machine_ps1)` to your `PS1` setting in `~/.bashrc`. ```bash PS1='[\u@\h \W$(__docker_machine_ps1)]\$ ' ``` You can find additional documentation in the comments at the [top of each script](https://github.com/docker/machine/tree/master/contrib/completion/bash){: target="_blank" rel="noopener" class="_"}. ## How to uninstall Docker Machine To uninstall Docker Machine: * Optionally, remove the machines you created. To remove each machine individually: `docker-machine rm ` To remove all machines: `docker-machine rm -f $(docker-machine ls -q)` (you might need to use `-force` on Windows). Removing machines is an optional step because there are cases where you might want to save and migrate existing machines to a [Docker for Mac](../docker-for-mac/index.md) or [Docker Desktop for Windows](../docker-for-windows/index.md) environment, for example. * Remove the executable: `rm $(which docker-machine)` > **Note** > > As a point of information, the `config.json`, certificates, > and other data related to each virtual machine created by `docker-machine` > is stored in `~/.docker/machine/machines/` on Mac and Linux and in > `~\.docker\machine\machines\` on Windows. We recommend that you do not edit or > remove those files directly as this only affects information for the Docker > CLI, not the actual VMs, regardless of whether they are local or on remote > servers. ## Where to go next - [Docker Machine overview](index.md) - Create and run a Docker host on your [local system using virtualization](get-started.md) - Provision multiple Docker hosts [on your cloud provider](get-started-cloud.md) - [Docker Machine driver reference](drivers/index.md) - [Docker Machine subcommand reference](reference/index.md)