用Boot2Docker来使用Docker(toolbox在Windows下安装Docker)

安装之前先了解下关键概念:

在linux上安装Docker,你的机器即使localhost也是docker主机;在网络中,localhost是指您的计算机。docker主机是容器中在该机器上运行。说白了就是直接安装在linux上,英文翻译真蛋疼。

在Windows安装,Docker守护进程运行Linux虚拟机内。您可以使用Windows的客户端与虚拟机中的Docker主机通信。这台主机中运行你的Docker容器。

win_docker_host

 

在Windows中,Docker主机地址是Linux VM的地址。当启动docker-machine虚拟机时会被分配一个IP地址。当你启动一个容器,容器的端口会映射到VM。

安装

 

https://www.docker.com/toolbox

或者去github上下在:https://github.com/boot2docker/windows-installer/releases

不能下载 可以到网盘下载 链接: http://pan.baidu.com/s/1jGrkJ7w 密码: 3xie

blog20150921235847

基本是下一步,下一步,最后一步选上 加到path:

blog20150921235949

the Docker Quickstart Terminal

装完后桌面上会多出几个图标,其中有一个是Docker Quickstart Terminal,双击运行,居然出现错误:

blog20150922001611

关掉,已管理员身份运行:
## .
## ## ## ==
## ## ## ## ## ===
/"""""""""""""""""\___/ ===
~~~ {~~ ~~~~ ~~~ ~~~~ ~~~ ~ / ===- ~~~
\______ o __/
\ \ __/
\____\_______/

host is not running
docker is configured to use the default machine with IP
For help getting started, check out the docs at https://docs.docker.com
lei@ganlei MINGW64 ~
$

手动启动虚拟机,提示VT-x/AMD-V 硬件加速在系统中不可用;记得以前用VMware时开启过的,重启进BIOS检查,发现状态是Disabled,修改为Enabled 开启虚拟化支持:

删掉重新来:

Creating Machine default…
Creating VirtualBox VM…
Creating SSH key…
Starting VirtualBox VM…
Starting VM…
To see how to connect Docker to this machine, run: G:\Program Files\Docker Toolbox\docker-machine.exe env default
Starting machine default…
Started machines may have new IP addresses. You may need to re-run the `docker-machine env` command.
Setting environment variables for machine default…
## .
## ## ## ==
## ## ## ## ## ===
/”””””””””””””””””\___/ ===
~~~ {~~ ~~~~ ~~~ ~~~~ ~~~ ~ / ===- ~~~
\______ o __/
\ \ __/
\____\_______/

docker is configured to use the default machine with IP 192.168.99.100
For help getting started, check out the docs at https://docs.docker.com
lei@ganlei MINGW64 ~
$

瞅一眼Docker主机是什么样子的:

blog20150922011047

通过运行hello-world容器来验证是否安装成功:

lei@ganlei MINGW64 ~
$ docker run hello-world
Unable to find image ‘hello-world:latest’ locally
latest: Pulling from library/hello-world
535020c3e8ad: Pulling fs layer
af340544ed62: Pulling fs layer
af340544ed62: Verifying Checksum
af340544ed62: Download complete
535020c3e8ad: Verifying Checksum
535020c3e8ad: Download complete
535020c3e8ad: Pull complete
af340544ed62: Pull complete
library/hello-world:latest: The image you are pulling has been verified. Important: image verification is a tech preview feature and should not be relied on to provide security.
Digest: sha256:02fee8c3220ba806531f606525eceb83f4feb654f62b207191b1c9209188dedd
Status: Downloaded newer image for hello-world:latest

Hello from Docker.
This message shows that your installation appears to be working correctly.

To generate this message, Docker took the following steps:
1. The Docker client contacted the Docker daemon.
2. The Docker daemon pulled the “hello-world” image from the Docker Hub.
3. The Docker daemon created a new container from that image which runs the
executable that produces the output you are currently reading.
4. The Docker daemon streamed that output to the Docker client, which sent it
to your terminal.

To try something more ambitious, you can run an Ubuntu container with:
$ docker run -it ubuntu bash

Share images, automate workflows, and more with a free Docker Hub account:
https://hub.docker.com

For more examples and ideas, visit:
https://docs.docker.com/userguide/
lei@ganlei MINGW64 ~
$

安装Docker镜像:

默认用户名docker,密码:tcuser

$ ssh docker@192.168.99.100
docker@192.168.99.100’s password:
## .
## ## ## ==
## ## ## ## ## ===
/”””””””””””””””””\___/ ===
~~~ {~~ ~~~~ ~~~ ~~~~ ~~~ ~ / ===- ~~~
\______ o __/
\ \ __/
\____\_______/
_ _ ____ _ _
| |__ ___ ___ | |_|___ \ __| | ___ ___| | _____ _ __
| ‘_ \ / _ \ / _ \| __| __) / _` |/ _ \ / __| |/ / _ \ ‘__|
| |_) | (_) | (_) | |_ / __/ (_| | (_) | (__| < __/ |
|_.__/ \___/ \___/ \__|_____\__,_|\___/ \___|_|\_\___|_|
Boot2Docker version 1.8.2, build master : aba6192 – Thu Sep 10 20:58:17 UTC 2015
Docker version 1.8.2, build 0a8c2e3
docker@default:~$

拉取一个镜像:
docker pull daocloud.io/daocloud/dao-2048:v1.0
Pulling repository daocloud.io/daocloud/dao-2048
ebedc5b763b3: Pulling image (v1.0) from daocloud.io/daocloud/dao-2048, endpoint:ebedc5b763b3: Download complete
31f630c65071: Download complete
1eae7e4d52e1: Download complete
63e8c6f236f9: Download complete
2a6e8fa08c63: Download complete
c96993b7308a: Download complete
Status: Downloaded newer image for daocloud.io/daocloud/dao-2048:v1.0

查看镜像:
docker@default:~$ docker images
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
hello-world latest af340544ed62 6 weeks ago 960 B
daocloud.io/daocloud/dao-2048 v1.0 ebedc5b763b3 9 weeks ago 8.017 MB
daocloud.io/library/ubuntu 10.04 3db9c44f4520 17 months ago 183 MB
docker@default:~$

运行容器:
docker@default:~$ docker run -i -t daocloud.io/library/ubuntu:10.04 /bin/bash
root@6c76a556b6ed:/# ls
bin boot dev etc home lib lib64 media mnt opt proc root sbin selinux srv sys tmp usr var
root@6c76a556b6ed:/# pwd
/

blog20150922020318

 

如果有阿里云的ECS可以利用云服务器内网来拉取镜像,阿里云ECS内网Docker镜像地址:http://help.aliyun.com/knowledge_detail.htm?knowledgeId=5974865

docker官方安装文档:https://docs.docker.com/installation/windows/

docs_docker_com_installation_windows

未经允许不得转载:ganlei的个人博客 » 用Boot2Docker来使用Docker(toolbox在Windows下安装Docker)

赞 (11)
分享到:更多 ()