|
@@ -7,7 +7,7 @@ page_keywords: development, inception, container, image Dockerfile, dependencies
|
|
|
In this section, you learn to develop like a member of Docker's core team.
|
|
|
The `docker` repository includes a `Dockerfile` at its root. This file defines
|
|
|
Docker's development environment. The `Dockerfile` lists the environment's
|
|
|
-dependencies: system libraries and binaries, go environment, go dependencies,
|
|
|
+dependencies: system libraries and binaries, Go environment, Go dependencies,
|
|
|
etc.
|
|
|
|
|
|
Docker's development environment is itself, ultimately a Docker container.
|
|
@@ -22,13 +22,12 @@ you continue working with your fork on this branch.
|
|
|
|
|
|
## Clean your host of Docker artifacts
|
|
|
|
|
|
-Docker developers run the latest stable release of the Docker software; Or
|
|
|
-Boot2docker and Docker if their machine is Mac OS X. They clean their local
|
|
|
+Docker developers run the latest stable release of the Docker software (with Boot2Docker if their machine is Mac OS X). They clean their local
|
|
|
hosts of unnecessary Docker artifacts such as stopped containers or unused
|
|
|
-images. Cleaning unnecessary artifacts isn't strictly necessary but it is
|
|
|
+images. Cleaning unnecessary artifacts isn't strictly necessary, but it is
|
|
|
good practice, so it is included here.
|
|
|
|
|
|
-To remove unnecessary artifacts.
|
|
|
+To remove unnecessary artifacts,
|
|
|
|
|
|
1. Verify that you have no unnecessary containers running on your host.
|
|
|
|
|
@@ -75,7 +74,7 @@ To remove unnecessary artifacts.
|
|
|
|
|
|
$ docker rmi -f $(docker images -q -a -f dangling=true)
|
|
|
|
|
|
- This command uses `docker images` to lists all images (`-a` flag) by numeric
|
|
|
+ This command uses `docker images` to list all images (`-a` flag) by numeric
|
|
|
IDs (`-q` flag) and filter them to find dangling images (`-f
|
|
|
dangling=true`). Then, the `docker rmi` command forcibly (`-f` flag) removes
|
|
|
the resulting list. To remove just one image, use the `docker rmi ID`
|
|
@@ -100,13 +99,13 @@ environment.
|
|
|
|
|
|
If you are following along with this guide, you created a `dry-run-test`
|
|
|
branch when you <a href="/project/set-up-git" target="_blank"> set up Git for
|
|
|
- contributing</a>
|
|
|
+ contributing</a>.
|
|
|
|
|
|
4. Ensure you are on your `dry-run-test` branch.
|
|
|
|
|
|
$ git checkout dry-run-test
|
|
|
|
|
|
- If you get a message that the branch doesn't exist, add the `-b` flag so the
|
|
|
+ If you get a message that the branch doesn't exist, add the `-b` flag (git checkout -b dry-run-test) so the
|
|
|
command both creates the branch and checks it out.
|
|
|
|
|
|
5. Compile your development environment container into an image.
|
|
@@ -201,7 +200,7 @@ build and run a `docker` binary in your container.
|
|
|
|
|
|

|
|
|
|
|
|
- Mac OSX users, make sure you run `eval "$(boot2docker shellinit)"` in any new
|
|
|
+ Mac OS X users, make sure you run `eval "$(boot2docker shellinit)"` in any new
|
|
|
terminals.
|
|
|
|
|
|
2. In a terminal, create a new container from your `dry-run-test` image.
|
|
@@ -212,7 +211,7 @@ build and run a `docker` binary in your container.
|
|
|
The command creates a container from your `dry-run-test` image. It opens an
|
|
|
interactive terminal (`-ti`) running a `/bin/bash shell`. The
|
|
|
`--privileged` flag gives the container access to kernel features and device
|
|
|
- access. It is this flag that allows you to run a container in a container.
|
|
|
+ access. This flag allows you to run a container in a container.
|
|
|
Finally, the `-rm` flag instructs Docker to remove the container when you
|
|
|
exit the `/bin/bash` shell.
|
|
|
|
|
@@ -282,7 +281,7 @@ with the `make.sh` script.
|
|
|
|
|
|
root@5f8630b873fe:/go/src/github.com/docker/docker# docker -dD
|
|
|
|
|
|
- The `-dD` flag starts the daemon in debug mode; You'll find this useful
|
|
|
+ The `-dD` flag starts the daemon in debug mode. You'll find this useful
|
|
|
when debugging your code.
|
|
|
|
|
|
9. Bring up one of the terminals on your local host.
|
|
@@ -365,7 +364,7 @@ container.
|
|
|
|
|
|
Your location will be different because it reflects your environment.
|
|
|
|
|
|
-3. Create a container using `dry-run-test` but this time mount your repository
|
|
|
+3. Create a container using `dry-run-test`, but this time, mount your repository
|
|
|
onto the `/go` directory inside the container.
|
|
|
|
|
|
$ docker run --privileged --rm -ti -v `pwd`:/go/src/github.com/docker/docker dry-run-test /bin/bash
|
|
@@ -384,7 +383,7 @@ onto the `/go` directory inside the container.
|
|
|
|
|
|
$ cd ~/repos/docker-fork/
|
|
|
|
|
|
-6. Create a fresh binary but this time use the `make` command.
|
|
|
+6. Create a fresh binary, but this time, use the `make` command.
|
|
|
|
|
|
$ make BINDDIR=. binary
|
|
|
|