2014-04-16 10:53:12 +10:00
|
|
|
page_title: Installation on Windows
|
2014-05-26 11:52:57 +10:00
|
|
|
page_description: Docker installation on Microsoft Windows
|
2014-04-16 10:53:12 +10:00
|
|
|
page_keywords: Docker, Docker documentation, Windows, requirements, virtualbox, boot2docker
|
|
|
|
|
|
|
|
# Windows
|
2014-06-08 17:36:49 -07:00
|
|
|
> **Note:**
|
|
|
|
> Docker has been tested on Windows 7.1 and 8; it may also run on older versions.
|
2014-06-21 23:12:10 +02:00
|
|
|
> Your processor needs to support hardware virtualization.
|
2014-05-26 11:52:57 +10:00
|
|
|
|
2014-06-09 11:23:54 +02:00
|
|
|
The Docker Engine uses Linux-specific kernel features, so to run it on Windows
|
|
|
|
we need to use a lightweight virtual machine (vm). You use the Windows Docker client to
|
2014-06-08 17:36:49 -07:00
|
|
|
control the virtualized Docker Engine to build, run, and manage Docker containers.
|
|
|
|
|
|
|
|
To make this process easier, we've designed a helper application called
|
|
|
|
[Boot2Docker](https://github.com/boot2docker/boot2docker) that installs the
|
|
|
|
virtual machine and runs the Docker daemon.
|
2014-05-26 11:52:57 +10:00
|
|
|
|
2014-06-08 13:11:50 -07:00
|
|
|
## Demonstration
|
|
|
|
|
|
|
|
<iframe width="640" height="480" src="//www.youtube.com/embed/oSHN8_uiZd4?rel=0" frameborder="0" allowfullscreen></iframe>
|
2014-04-16 10:53:12 +10:00
|
|
|
|
2014-05-26 11:52:57 +10:00
|
|
|
## Installation
|
2014-04-16 10:53:12 +10:00
|
|
|
|
2014-10-14 09:16:17 +10:00
|
|
|
1. Download the latest release of the [Docker for Windows Installer](https://github.com/boot2docker/windows-installer/releases/latest)
|
2014-06-08 17:36:49 -07:00
|
|
|
2. Run the installer, which will install VirtualBox, MSYS-git, the boot2docker Linux ISO,
|
|
|
|
and the Boot2Docker management tool.
|
2014-05-26 11:52:57 +10:00
|
|
|
![](/installation/images/windows-installer.png)
|
2014-06-20 19:23:35 +12:00
|
|
|
3. Run the `Boot2Docker Start` shell script from your Desktop or Program Files > Boot2Docker for Windows.
|
2014-05-26 11:52:57 +10:00
|
|
|
The Start script will ask you to enter an ssh key passphrase - the simplest
|
|
|
|
(but least secure) is to just hit [Enter].
|
2014-06-08 15:53:20 -07:00
|
|
|
|
2014-05-26 11:52:57 +10:00
|
|
|
![](/installation/images/windows-boot2docker-start.png)
|
2014-04-16 10:53:12 +10:00
|
|
|
|
2014-06-08 15:53:20 -07:00
|
|
|
The `Boot2Docker Start` script will connect you to a shell session in the virtual
|
|
|
|
machine. If needed, it will initialize a new VM and start it.
|
2014-04-16 10:53:12 +10:00
|
|
|
|
2014-05-26 11:52:57 +10:00
|
|
|
## Upgrading
|
2014-04-16 10:53:12 +10:00
|
|
|
|
2014-05-26 11:52:57 +10:00
|
|
|
1. Download the latest release of the [Docker for Windows Installer](
|
2014-10-14 09:16:17 +10:00
|
|
|
https://github.com/boot2docker/windows-installer/releases/latest)
|
2014-06-08 15:53:20 -07:00
|
|
|
|
2014-05-26 11:52:57 +10:00
|
|
|
2. Run the installer, which will update the Boot2Docker management tool.
|
2014-06-08 15:53:20 -07:00
|
|
|
|
2014-05-26 11:52:57 +10:00
|
|
|
3. To upgrade your existing virtual machine, open a terminal and run:
|
2014-06-08 15:53:20 -07:00
|
|
|
|
2014-05-26 11:52:57 +10:00
|
|
|
boot2docker stop
|
|
|
|
boot2docker download
|
|
|
|
boot2docker start
|
2014-04-16 10:53:12 +10:00
|
|
|
|
|
|
|
## Running Docker
|
|
|
|
|
2014-12-29 18:19:42 +10:00
|
|
|
{{ include "no-remote-sudo.md" }}
|
|
|
|
|
2014-06-08 17:36:49 -07:00
|
|
|
Boot2Docker will log you in automatically so you can start using Docker right away.
|
2014-04-16 10:53:12 +10:00
|
|
|
|
2014-07-15 14:02:12 +10:00
|
|
|
Let's try the `hello-world` example image. Run
|
2014-04-16 10:53:12 +10:00
|
|
|
|
2014-07-15 14:02:12 +10:00
|
|
|
$ docker run hello-world
|
2014-04-16 10:53:12 +10:00
|
|
|
|
2014-07-15 14:02:12 +10:00
|
|
|
This should download the very small `hello-world` image and print a `Hello from Docker.` message.
|
2014-04-16 10:53:12 +10:00
|
|
|
|
2014-12-19 16:43:34 +10:00
|
|
|
## Login with PUTTY instead of using the CMD
|
2014-12-05 20:08:23 +00:00
|
|
|
|
2014-12-19 16:43:34 +10:00
|
|
|
Boot2Docker generates and uses the public/private key pair in your `%HOMEPATH%\.ssh`
|
|
|
|
directory so to log in you need to use the private key from this same directory.
|
2014-12-05 20:08:23 +00:00
|
|
|
|
2014-12-19 16:43:34 +10:00
|
|
|
The private key needs to be converted into the format PuTTY uses.
|
|
|
|
|
|
|
|
You can do this with
|
|
|
|
[puttygen](http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html):
|
|
|
|
|
|
|
|
- Open `puttygen.exe` and load ("File"->"Load" menu) the private key from
|
|
|
|
`%HOMEPATH%\.ssh\id_boot2docker`
|
|
|
|
- then click: "Save Private Key".
|
|
|
|
- Then use the saved file to login with PuTTY using `docker@127.0.0.1:2022`.
|
2014-06-09 09:02:57 +10:00
|
|
|
|
2014-05-26 11:52:57 +10:00
|
|
|
# Further Details
|
2014-05-21 16:29:24 +08:00
|
|
|
|
2014-06-08 17:36:49 -07:00
|
|
|
The Boot2Docker management tool provides several commands:
|
2014-05-21 16:29:24 +08:00
|
|
|
|
2014-06-08 15:53:20 -07:00
|
|
|
$ ./boot2docker
|
2014-06-19 13:00:45 +02:00
|
|
|
Usage: ./boot2docker [<options>] {help|init|up|ssh|save|down|poweroff|reset|restart|config|status|info|ip|delete|download|version} [<args>]
|
2014-05-21 16:29:24 +08:00
|
|
|
|
2014-05-28 14:42:19 +10:00
|
|
|
|
2014-06-09 09:02:57 +10:00
|
|
|
## Container port redirection
|
|
|
|
|
2014-06-13 15:38:45 -07:00
|
|
|
If you are curious, the username for the boot2docker default user is `docker` and the password is `tcuser`.
|
|
|
|
|
2014-06-08 17:36:49 -07:00
|
|
|
The latest version of `boot2docker` sets up a host only network adaptor which provides access to the container's ports.
|
2014-05-28 14:42:19 +10:00
|
|
|
|
|
|
|
If you run a container with an exposed port:
|
|
|
|
|
2014-06-13 09:24:09 +08:00
|
|
|
docker run --rm -i -t -p 80:80 nginx
|
2014-05-28 14:42:19 +10:00
|
|
|
|
2014-06-13 09:24:09 +08:00
|
|
|
Then you should be able to access that nginx server using the IP address reported
|
2014-05-28 14:42:19 +10:00
|
|
|
to you using:
|
|
|
|
|
2014-06-09 09:02:57 +10:00
|
|
|
boot2docker ip
|
2014-05-28 14:42:19 +10:00
|
|
|
|
2014-06-08 17:36:49 -07:00
|
|
|
Typically, it is 192.168.59.103, but it could get changed by Virtualbox's DHCP
|
|
|
|
implementation.
|
2014-05-28 14:42:19 +10:00
|
|
|
|
2014-05-26 11:52:57 +10:00
|
|
|
For further information or to report issues, please see the [Boot2Docker site](http://boot2docker.io)
|