add initial docs for windows client testing

Docker-DCO-1.1-Signed-off-by: Jessie Frazelle <princess@docker.com> (github: jfrazelle)

Docker-DCO-1.1-Signed-off-by: Jessie Frazelle <jess@docker.com> (github: jfrazelle)

docs: crop and optimize images

Cropped and optimized images.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>

Docker-DCO-1.1-Signed-off-by: Jessie Frazelle <princess@docker.com> (github: jfrazelle)

Testing and updating the Windows material

Signed-off-by: Mary Anthony <mary@docker.com>

checkpoint

Signed-off-by: Mary Anthony <mary@docker.com>

Fitting the Windows specific material into the contributor guide

Signed-off-by: Mary Anthony <mary@docker.com>

Entering James comments

Signed-off-by: Mary Anthony <mary@docker.com>
This commit is contained in:
Jessica Frazelle 2015-03-10 11:21:09 -07:00 committed by Mary Anthony
parent 779939e334
commit af8efab756
10 changed files with 322 additions and 19 deletions

View File

@ -34,6 +34,7 @@ pages:
- ['installation/ubuntulinux.md', 'Installation', 'Ubuntu'] - ['installation/ubuntulinux.md', 'Installation', 'Ubuntu']
- ['installation/mac.md', 'Installation', 'Mac OS X'] - ['installation/mac.md', 'Installation', 'Mac OS X']
- ['installation/windows.md', 'Installation', 'Microsoft Windows'] - ['installation/windows.md', 'Installation', 'Microsoft Windows']
- ['installation/testing-windows-docker-client.md', 'Installation', 'Building and testing the Windows Docker client']
- ['installation/amazon.md', 'Installation', 'Amazon EC2'] - ['installation/amazon.md', 'Installation', 'Amazon EC2']
- ['installation/archlinux.md', 'Installation', 'Arch Linux'] - ['installation/archlinux.md', 'Installation', 'Arch Linux']
- ['installation/binaries.md', 'Installation', 'Binaries'] - ['installation/binaries.md', 'Installation', 'Binaries']
@ -195,21 +196,21 @@ pages:
- ['terms/image.md', '**HIDDEN**'] - ['terms/image.md', '**HIDDEN**']
# Project: # Project:
- ['project/index.md', '**HIDDEN**'] - ['project/index.md', '**HIDDEN**']
- ['project/who-written-for.md', 'Contribute', 'README first'] - ['project/who-written-for.md', 'Contributor', 'README first']
- ['project/software-required.md', 'Contribute', 'Get required software'] - ['project/software-required.md', 'Contributor', 'Get required software for Linux or OS X']
- ['project/set-up-git.md', 'Contribute', 'Configure Git for contributing'] - ['project/software-req-win.md', 'Contributor', 'Get required software for Windows']
- ['project/set-up-dev-env.md', 'Contribute', 'Work with a development container'] - ['project/set-up-git.md', 'Contributor', 'Configure Git for contributing']
- ['project/test-and-docs.md', 'Contribute', 'Run tests and test documentation'] - ['project/set-up-dev-env.md', 'Contributor', 'Work with a development container']
- ['project/make-a-contribution.md', 'Contribute', 'Understand contribution workflow'] - ['project/test-and-docs.md', 'Contributor', 'Run tests and test documentation']
- ['project/find-an-issue.md', 'Contribute', 'Find an issue'] - ['project/make-a-contribution.md', 'Contributor', 'Understand contribution workflow']
- ['project/work-issue.md', 'Contribute', 'Work on an issue'] - ['project/find-an-issue.md', 'Contributor', 'Find an issue']
- ['project/create-pr.md', 'Contribute', 'Create a pull request'] - ['project/work-issue.md', 'Contributor', 'Work on an issue']
- ['project/review-pr.md', 'Contribute', 'Participate in the PR review'] - ['project/create-pr.md', 'Contributor', 'Create a pull request']
- ['project/advanced-contributing.md', 'Contribute', 'Advanced contributing'] - ['project/review-pr.md', 'Contributor', 'Participate in the PR review']
- ['project/get-help.md', 'Contribute', 'Where to get help'] - ['project/advanced-contributing.md', 'Contributor', 'Advanced contributing']
- ['project/coding-style.md', 'Contribute', 'Coding style guide'] - ['project/get-help.md', 'Contributor', 'Where to get help']
- ['project/doc-style.md', 'Contribute', 'Documentation style guide'] - ['project/coding-style.md', 'Contributor', 'Coding style guide']
- ['project/doc-style.md', 'Contributor', 'Documentation style guide']

Binary file not shown.

After

Width:  |  Height:  |  Size: 39 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 58 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 118 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 225 KiB

View File

@ -46,9 +46,12 @@ target="_blank">docker/docker repository</a>.
that instead. You'll need to convert what you see in the guide to what is that instead. You'll need to convert what you see in the guide to what is
appropriate to your tool. appropriate to your tool.
5. Open a terminal window on your local host and change to your home directory. In Windows, you'll work in your Boot2Docker window instead of Powershell or cmd. 5. Open a terminal window on your local host and change to your home directory.
$ cd ~ $ cd ~
In Windows, you'll work in your Boot2Docker window instead of Powershell or
a `cmd` window.
6. Create a `repos` directory. 6. Create a `repos` directory.

View File

@ -0,0 +1,258 @@
page_title: Set up for development on Windows
page_description: How to set up a server to test Docker Windows client
page_keywords: development, inception, container, image Dockerfile, dependencies, Go, artifacts, windows
# Get the required software for Windows
This page explains how to get the software you need to use a a Windows Server
2012 or Windows 8 machine for Docker development. Before you begin contributing
you must have:
- a GitHub account
- Git for Windows (msysGit)
- TDM-GCC, a compiler suite for Windows
- MinGW (tar and xz)
- Go language
> **Note**: This installation prcedure refers to the `C:\` drive. If you system's main drive
is `D:\` you'll need to substitute that in where appropriate in these
instructions.
### Get a GitHub account
To contribute to the Docker project, you will need a <a
href="https://github.com" target="_blank">GitHub account</a>. A free account is
fine. All the Docker project repositories are public and visible to everyone.
You should also have some experience using both the GitHub application and `git`
on the command line.
## Install Git for Windows
Git for Windows includes several tools including msysGit, which is a build
environment. The environment contains the tools you need for development such as
Git and a Git Bash shell.
1. Browse to the [Git for Windows](https://msysgit.github.io/) download page.
2. Click **Download**.
Windows prompts you to save the file to your machine.
3. Run the saved file.
The system displays the **Git Setup** wizard.
4. Click the **Next** button to move through the wizard and accept all the defaults.
5. Click **Finish** when you are done.
## Installing TDM-GCC
TDM-GCC is a compiler suite for Windows. You'll use this suite to compile the
Docker Go code as you develop.
1. Browse to
[tdm-gcc download page](http://tdm-gcc.tdragon.net/download).
2. Click on the lastest 64-bit version of the package.
Windows prompts you to save the file to your machine
3. Set up the suite by running the downloaded file.
The system opens the **TDM-GCC Setup** wizard.
4. Click **Create**.
5. Click the **Next** button to move through the wizard and accept all the defaults.
6. Click **Finish** when you are done.
## Installing MinGW (tar and xz)
MinGW is a minimalist port of the GNU Compiler Collection (GCC). In this
procedure, you first download and install the MinGW installation manager. Then,
you use the manager to install the `tar` and `xz` tools from the collection.
1. Browse to MinGW
[SourceForge](http://sourceforge.net/projects/mingw/).
2. Click **Download**.
Windows prompts you to save the file to your machine
3. Run the downloaded file.
The system opens the **MinGW Installation Manager Setup Tool**
4. Choose **Install** install the MinGW Installation Manager.
5. Press **Continue**.
The system installs and then opens the MinGW Installation Manager.
6. Press **Continue** after the install completes to open the manager.
7. Select **All Packages > MSYS Base System** from the left hand menu.
The system displays the available packages.
8. Click on the the **msys-tar bin** package and choose **Mark for Installation**.
9. Click on the **msys-xz bin** package and choose **Mark for Installation**.
10. Select **Installation > Apply Changes**, to install the selected packages.
The system displays the **Schedule of Pending Actions Dialog**.
![windows-mingw](/project/images/windows-mingw.png)
11. Press **Apply**
MingGW installs the packages for you.
12. Close the dialog and the MinGW Installation Manager.
## Set up your environment variables
You'll need to add the compiler to your `Path` environment variable.
1. Open the **Control Panel**.
2. Choose **System and Security > System**.
3. Click the **Advanced system settings** link in the sidebar.
The system opens the **System Properties** dialog.
3. Select the **Advanced** tab.
4. Click **Environment Variables**.
The system opens the **Environment Variables dialog** dialog.
5. Locate the **System variables** area and scroll to the **Path**
variable.
![windows-mingw](/project/images/path_variable.png)
6. Click **Edit** to edit the variable (you can also double-click it).
The system opens the **Edit System Variable** dialog.
7. Make sure the `Path` includes `C:\TDM-GCC64\bin`
![include gcc](/project/images/include_gcc.png)
If you don't see `C:\TDM-GCC64\bin`, add it.
8. Press **OK** to close this dialog.
9. Press **OK** twice to close out of the remaining dialogs.
## Install Go and cross-compile it
In this section, you install the Go language. Then, you build the source so that it can cross-compile for `linux/amd64` architectures.
1. Open [Go Language download](http://golang.org/dl/) page in your browser.
2. Locate and click the latest `.msi` installer.
The system prompts you to save the file.
3. Run the installer.
The system opens the **Go Programming Langauge Setup** dialog.
4. Select all the defaults to install.
5. Press **Finish** to close the installation dialog.
6. Start a command prompt.
7. Change to the Go `src` directory.
cd c:\Go\src
8. Set the following Go variables
c:\Go\src> set GOOS=linux
c:\Go\src> set GOARCH=amd64
9. Compile the source.
c:\Go\src> make.bat
Compiling the source also adds a number of variables to your Windows environment.
## Get the Docker repository
In this step, you start a Git `bash` terminal and get the Docker source code from
Github.
1. Locate the **Git Bash** program and start it.
Recall that **Git Bash** came with the Git for Windows installation. **Git
Bash** just as it sounds allows you to run a Bash terminal on Windows.
![Git Bash](/project/images/git_bash.png)
2. Change to the root directory.
$ cd /c/
3. Make a `gopath` directory.
$ mkdir gopath
4. Go get the `docker/docker` repository.
$ go.exe get github.com/docker/docker package github.com/docker/docker
imports github.com/docker/docker
imports github.com/docker/docker: no buildable Go source files in C:\gopath\src\github.com\docker\docker
In the next steps, you create environment variables for you Go paths.
5. Open the **Control Panel** on your system.
6. Choose **System and Security > System**.
7. Click the **Advanced system settings** link in the sidebar.
The system opens the **System Properties** dialog.
8. Select the **Advanced** tab.
9. Click **Environment Variables**.
The system opens the **Environment Variables dialog** dialog.
10. Locate the **System variables** area and scroll to the **Path**
variable.
11. Click **New**.
Now you are going to create some new variables. These paths you'll create in the next procedure; but you can set them now.
12. Enter `GOPATH` for the **Variable Name**.
13. For the **Variable Value** enter the following:
C:\gopath;C:\gopath\src\github.com\docker\docker\vendor
14. Press **OK** to close this dialog.
The system adds `GOPATH` to the list of **System Variables**.
15. Press **OK** twice to close out of the remaining dialogs.
## Where to go next
In the next section, you'll [learn how to set up and configure Git for
contributing to Docker](/project/set-up-git/).

View File

@ -2,9 +2,10 @@ page_title: Get the required software
page_description: Describes the software required to contribute to Docker page_description: Describes the software required to contribute to Docker
page_keywords: GitHub account, repository, Docker, Git, Go, make, page_keywords: GitHub account, repository, Docker, Git, Go, make,
# Get the required software # Get the required software for Linux or OS X
Before you begin contributing you must have: This page explains how to get the software you need to use a Linux or OS X
machine for Docker development. Before you begin contributing you must have:
* a GitHub account * a GitHub account
* `git` * `git`

View File

@ -230,6 +230,46 @@ with new memory settings.
6. Restart your container and try your test again. 6. Restart your container and try your test again.
## Testing just the Windows client
This explains how to test the Windows client on a Windows server set up as a
development environment. You'll use the **Git Bash** came with the Git for
Windows installation. **Git Bash** just as it sounds allows you to run a Bash
terminal on Windows.
1. If you don't have one, start a Git Bash terminal.
![Git Bash](/project/images/git_bash.png)
2. Change to the `docker` source directory.
$ cd /c/gopath/src/github.com/docker/docker
3. Set `DOCKER_CLIENTONLY` as follows:
$ export DOCKER_CLIENTONLY=1
This ensures you are building only the client binary instead of both the
binary and the daemon.
4. Set `DOCKER_TEST_HOST` to the `tcp://IP_ADDRESS:2376` value; substitute your
machine's actual IP address, for example:
$ export DOCKER_TEST_HOST=tcp://263.124.23.200:2376
5. Make the binary and the test:
$ hack/make.sh binary test-integration-cli
Many tests are skipped on Windows for various reasons. You see which tests
were skipped by re-running the make and passing in the
`TESTFLAGS='-test.v'` value.
You can now choose to make changes to the Docker source or the tests. If you
make any changes just run these commands again.
## Build and test the documentation ## Build and test the documentation
The Docker documentation source files are under `docs/sources`. The content is The Docker documentation source files are under `docs/sources`. The content is