Docker入门【一】windows安装Docker ToolBox

  • Post author:
  • Post category:其他


Docker 是一个开源的应用容器引擎,开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,便可以实现虚拟化。与传统的虚拟机方式不同,方便快捷让越来越多人去使用它来简化配置快速部署,从而提高开发效率,而且还可以隔离应用,说了那么多,好像说得那么屌,还是要上手试试才知道是不是那么好用。

【1】安装Docker ToolBox

可能你对这个陌生的东西还不是很理解到底是什么,所以我先进行安装一下,让你可以具体的感受一下docker。当然对于不同的电脑配置,安装还是有一定差异的,这里win7,win8,win10都可以看这里进行安装。当然你也可以不安装这个工具,可以用比较新的docker for windows 。

下载可执行程序exe

docker官网:

https://docs.docker.com/toolbox/toolbox_install_windows/

阿里云的镜像:

http://mirrors.aliyun.com/docker-toolbox/windows/docker-toolbox/

我的笔记本win10系统,下载DockerToolbox-18.09.3.exe,安装在D盘

安装步骤,基本上都是下一步下一步,自定义安装路径,勾选所有的组件,创建桌面快捷键,添加环境变量到path,确定安装,等待安装完毕。

如果你确实不是很熟悉window的安装步骤,那么你可以看一下下面几篇文章有详细安装流程。


https://jingyan.baidu.com/article/cdddd41cb69a6953cb00e1b1.html


https://docs.docker.com/toolbox/toolbox_install_windows/

安装完毕,桌面应该会显示三个图标,

Docker Quickstart Terminal 命令行,Kitematic (Alpha) GUI管理Docker,Oracle VM VirtualBox 虚拟机

注意:

[1]报错:windows 正在查找bash.exe。如果想亲自查找文件,请点击“浏览”

如果点击docker quickstart terminal报错,说缺少快捷方式,正在查找bash.exe,那么很有可能是因为git的原因,由于我在之前就有安装git,所以可能路径没有指好。那么为docker提供一个正确的git路径就好了,在cmd中执行下面的命令,对应好自己的路径。

D:\Program Files\Git\bin –login -i “D:\Docker Toolbox\start.sh”  

【2】Docker虚拟机文件地址修改(可选)

默认情况下,docker-machine创建的虚拟机文件,是保存在C盘的C:\Users\用户名.docker\machine\machines\default 目录下的,如果下载和使用的镜像过多,那么必然导致该文件夹膨胀过大,如果C盘比较吃紧,那么我们就得考虑把该虚拟机移到另一个盘上。具体操作如下:

移动docker的虚拟硬盘文件:

https://blog.csdn.net/chengly0129/article/details/68947265

-使用docker-machine stop default停掉Docker的虚拟机。

-打开VirtualBox,选择“管理”菜单下的“虚拟介质管理”,我们可以看到Docker虚拟机用的虚拟硬盘的文件disk。

-选中“disk”,然后点击菜单中的“复制”命令,根据向导,把当前的disk复制到另一个盘上面去。

-回到VirtualBox主界面,右键“default”这个虚拟机,选择“设置”命令,在弹出的窗口中选择“存储”选项。

-把disk从“控制器SATA”中删除,然后重新添加我们刚才复制到另外一个磁盘上的那个文件。

【3】Docker 加速器(可选)

使用 Docker 的时候,需要经常从官方获取镜像,但是由于显而易见的网络原因,拉取镜像的过程非常耗时,可以看到下面这个网址,应该再最下面的一段中。


http://guide.daocloud.io/dcs/daocloud-9153151.html#docker-toolbox

加速地址,注册登录后可以看到自己的加速地址,然后再Docker Quickstart Terminal 命令行执行就行了 执行下面命令:

docker-machine ssh default
sudo sed -i "s|EXTRA_ARGS='|EXTRA_ARGS='--registry-mirror=加速地址 |g" /var/lib/boot2docker/profile
exit
docker-machine restart default 

【4】运行Docker Quickstart Terminal

当我们双击点开运行的时候,它会启动virtualbox来构建一个defualt虚拟机启动一个默认的Linux系统。并且是用默认的docker用户登录  的,密码是tcuser。当然root肯定有,可以使用sudo -i切换,没有密码。这个操作系统默认ip是192.168.99.100。你可以在docker quickstart terminal命令行中执行。如果不小心你的docker quickstart terminal命令行窗口关闭了,你可以在点开这个快捷方式,但是总感觉这个cmd窗口不太好用,而且复制粘贴不方便 ,当然也可以启动后利用你的ssh工具连接22端口登录,例如xshell。

到这里,你可能貌似有点疑惑,这个docker是在哪里,实际上,它是利用vitualbox这个虚拟机软件,创建了一个虚拟机,使用默认的Linux default 4.14.133-boot2docker操作系统,然后docker运行在这个linux内核之上。那么你可能又会想到,这么麻烦,我直接用virtualbox来构建linux系统玩不就行了,要docker干嘛。因为docker需要用到linux内核,所以在toolbox中添加有virtualbox来提供linux内核。

============docker quickstart terminal命令行
                        ##         .
                  ## ## ##        ==
               ## ## ## ## ##    ===
           /"""""""""""""""""\___/ ===
      ~~~ {~~ ~~~~ ~~~ ~~~~ ~~~ ~ /  ===- ~~~
           \______ 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
​
​
Start interactive shell
​
Tacks@DESKTOP-VNPLJPO MINGW64 /d/Docker Toolbox
$ docker-machine ls                                                                                                 NAME      ACTIVE   DRIVER       STATE     URL                         SWARM   DOCKER     ERRORS
default   *        virtualbox   Running   tcp://192.168.99.1000:2376           v18.09.8
Tacks@DESKTOP-VNPLJPO MINGW64 /d/Docker Toolbox
$ docker-machine version
docker-machine.exe version 0.16.1, build cce350d7
Tacks@DESKTOP-VNPLJPO MINGW64 /d/Docker Toolbox
$ docker-machine ssh default
   ( '>')
  /) TC (\   Core is distributed with ABSOLUTELY NO WARRANTY.
 (/-_--_-\)           www.tinycorelinux.net
============shell 连接对应ip192.168.99.100,利用账号docker密码tcuser,可以登录进去。
docker@default:~$ sudo -i
root@default:~# uname -a
Linux default 4.14.133-boot2docker #1 SMP Wed Jul 17 21:16:54 UTC 2019 x86_64 GNU/Linux
root@default:~# hostname
default
root@default:~# cat /etc/issue 
Core Linux
root@default:~# cat /proc/meminfo | grep MemTotal   
MemTotal:        1013140 kB

【小结】

【cmd中可以利用这些命令来控制virtualbox的虚拟机启动】
//docker-machine 是docker官方提供的docker管理工具
//当然你要执行的话,要么把docker的安装目录放在环境变量中,要么在安装目录下执行命令D:\Docker Toolbox>
docker-machine start default    启动虚拟机
docker-machine restart default  重启虚拟机
docker-machine stop default     关闭虚拟机
docker-machine ssh default      ssh连接虚拟机
docker-machine version          查看docker-machine版本
docker-machine ls               查看当前运行的虚拟机
【查看】
 hostname 查看计算机名 
 uname -a 查看内核/操作系统/CPU信息 
 cat /etc/issue 查看Linux系统版本 此命令也适用于所有的Linux发行版
 cat /proc/meminfo | grep MemTotal   查看系统内存大小
 df -h    查看系统磁盘大小



版权声明:本文为Tacks原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。