github.com/guilhermebr/docker@v1.4.2-0.20150428121140-67da055cebca/docs/sources/installation/windows.md (about)

     1  page_title: Installation on Windows
     2  page_description: Docker installation on Microsoft Windows
     3  page_keywords: Docker, Docker documentation, Windows, requirements, virtualbox, boot2docker
     4  
     5  # Windows
     6  > **Note:**
     7  > Docker has been tested on Windows 7.1 and 8; it may also run on older versions.
     8  > Your processor needs to support hardware virtualization.
     9  
    10  The Docker Engine uses Linux-specific kernel features, so to run it on Windows
    11  we need to use a lightweight virtual machine (VM).  You use the **Windows Docker
    12  Client** to control the virtualized Docker Engine to build, run, and manage
    13  Docker containers.
    14  
    15  To make this process easier, we've designed a helper application called
    16  [Boot2Docker](https://github.com/boot2docker/boot2docker) creates a Linux virtual
    17  machine on Windows to run Docker on a Linux operating system.
    18  
    19  Although you will be using Windows Docker client, the docker engine hosting the
    20  containers will still be running on Linux. Until the Docker engine for Windows
    21  is developed, you can launch only Linux containers from your Windows machine.
    22  
    23  ![Windows Architecture Diagram](/installation/images/win_docker_host.svg)
    24  
    25  ## Demonstration
    26  
    27  <iframe width="640" height="480" src="//www.youtube.com/embed/TjMU3bDX4vo?rel=0" frameborder="0" allowfullscreen></iframe>
    28  
    29  ## Installation
    30  
    31  1. Download the latest release of the
    32     [Docker for Windows Installer](https://github.com/boot2docker/windows-installer/releases/latest).
    33  2. Run the installer, which will install Docker Client for Windows, VirtualBox,
    34     Git for Windows (MSYS-git), the boot2docker Linux ISO, and the Boot2Docker
    35     management tool.
    36     ![](/installation/images/windows-installer.png)
    37  3. Run the **Boot2Docker Start** shortcut from your Desktop or “Program Files →
    38     Boot2Docker for Windows”.
    39     The Start script will ask you to enter an ssh key passphrase - the simplest
    40     (but least secure) is to just hit [Enter].
    41  
    42  4. The **Boot2Docker Start** will start a unix shell already configured to manage
    43     Docker running inside the virtual machine. Run `docker version` to see
    44     if it is working correctly:
    45  
    46  ![](/installation/images/windows-boot2docker-start.png)
    47  
    48  ## Running Docker
    49  
    50  {{ include "no-remote-sudo.md" }}
    51  
    52  **Boot2Docker Start** will automatically start a shell with environment variables
    53  correctly set so you can start using Docker right away:
    54  
    55  Let's try the `hello-world` example image. Run
    56  
    57      $ docker run hello-world
    58  
    59  This should download the very small `hello-world` image and print a
    60  `Hello from Docker.` message.
    61  
    62  ## Using Docker from Windows Command Line Prompt (cmd.exe)
    63  
    64  Launch a Windows Command Line Prompt (cmd.exe).
    65  
    66  Boot2Docker command requires `ssh.exe` to be in the PATH, therefore we need to
    67  include `bin` folder of the Git installation (which has ssh.exe) to the `%PATH%`
    68  environment variable by running:
    69  
    70  	set PATH=%PATH%;"c:\Program Files (x86)\Git\bin"
    71  
    72  and then we can run the `boot2docker start` command to start the Boot2Docker VM.
    73  (Run `boot2docker init` command if you get an error saying machine does not
    74  exist.) Then copy the instructions for cmd.exe to set the environment variables
    75  to your console window and you are ready to run docker commands such as
    76  `docker ps`:
    77  
    78  ![](/installation/images/windows-boot2docker-cmd.png)
    79  
    80  ## Using Docker from PowerShell
    81  
    82  Launch a PowerShell window, then you need to add `ssh.exe` to your PATH:
    83  
    84  	$Env:Path = "${Env:Path};c:\Program Files (x86)\Git\bin"
    85  
    86  and after running `boot2docker start` command it will print PowerShell commands
    87  to set the environment variables to connect Docker running inside VM. Run these
    88  commands and you are ready to run docker commands such as `docker ps`:
    89  
    90  ![](/installation/images/windows-boot2docker-powershell.png)
    91  
    92  > NOTE: You can alternatively run `boot2docker shellinit | Invoke-Expression`
    93  > command to set the environment variables instead of copying and pasting on
    94  > PowerShell.
    95  
    96  # Further Details
    97  
    98  The Boot2Docker management tool provides several commands:
    99  
   100      $ boot2docker
   101      Usage: boot2docker.exe [<options>] {help|init|up|ssh|save|down|poweroff|reset|restart|config|status|info|ip|shellinit|delete|download|upgrade|version} [<args>]
   102  
   103  ## Upgrading
   104  
   105  1. Download the latest release of the [Docker for Windows Installer](
   106     https://github.com/boot2docker/windows-installer/releases/latest)
   107  
   108  2. Run the installer, which will update the Boot2Docker management tool.
   109  
   110  3. To upgrade your existing virtual machine, open a terminal and run:
   111  
   112          boot2docker stop
   113          boot2docker download
   114          boot2docker start
   115  
   116  ## Container port redirection
   117  
   118  If you are curious, the username for the boot2docker default user is `docker`
   119  and the password is `tcuser`.
   120  
   121  The latest version of `boot2docker` sets up a host only network adaptor which
   122  provides access to the container's ports.
   123  
   124  If you run a container with an exposed port:
   125  
   126      docker run --rm -i -t -p 80:80 nginx
   127  
   128  Then you should be able to access that nginx server using the IP address reported
   129  to you using:
   130  
   131      boot2docker ip
   132  
   133  Typically, it is 192.168.59.103, but it could get changed by Virtualbox's DHCP
   134  implementation.
   135  
   136  For further information or to report issues, please see the [Boot2Docker site](http://boot2docker.io)
   137  
   138  ## Login with PUTTY instead of using the CMD
   139  
   140  Boot2Docker generates and uses the public/private key pair in your `%USERPROFILE%\.ssh`
   141  directory so to log in you need to use the private key from this same directory.
   142  
   143  The private key needs to be converted into the format PuTTY uses.
   144  
   145  You can do this with
   146  [puttygen](http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html):
   147  
   148  - Open `puttygen.exe` and load ("File"->"Load" menu) the private key from
   149    `%USERPROFILE%\.ssh\id_boot2docker`
   150  - then click: "Save Private Key".
   151  - Then use the saved file to login with PuTTY using `docker@127.0.0.1:2022`.
   152  
   153  ## References
   154  
   155  If you have Docker hosts running and if you don't wish to do a 
   156  Boot2Docker installation, you can install the docker.exe using
   157  unofficial Windows package manager Chocolately. For information
   158  on how to do this, see [Docker package on Chocolatey](http://chocolatey.org/packages/docker).