基本使用
安装完成Toolbox后会有一个Docker Quickstart Terminal的快捷方式,双击运行如果报错,那可能是因为你已经安装了Hyper-v,所以VirtualBox无法用64位的虚拟机。需要卸载Hyper-v。
运行后会在Virtualbox中创建一个叫做default的虚拟机,然后很有可能会卡在waiting for an IP的命令下,然后就死活不动了。我的做法是彻底放弃Docker Quickstart Terminal,根本不用这玩意儿,关掉,我们用PowerShell进行虚拟机的管理。
打开PowerShell,输入:
docker-machine ls
我们可以看到我们当前的Docker虚拟机的状态。如果什么都没有的话,那么我们可以使用以下命令创建一个Docker虚拟机。
docker-machine create --driver=virtualbox default
创建完毕后,我们在用docker-machine ls确认我们的Docker虚拟机在运行中。
然后使用以下命令获得虚拟机的环境变量:
docker-machine env default
然后再输入:
docker-machine env default | Invoke-Expression
这样我们就把当前的PowerShell和虚拟机里面的Docker Linux建立的连接,接下来就可以在PowerShell中使用docker命令了。
比如我们要查看当前有哪些镜像:
docker images
当前有哪些容器:
docker ps –a
其他各种docker命令我就不在这里累述了。
Docker虚拟机文件地址修改
默认情况下,docker-machine创建的虚拟机文件,是保存在C盘的C:\Users\用户名\.docker\machine\machines\default 目录下的,如果下载和使用的镜像过多,那么必然导致该文件夹膨胀过大,如果C盘比较吃紧,那么我们就得考虑把该虚拟机移到另一个盘上。具体操作如下:
1.使用docker-machine stop default停掉Docker的虚拟机。
2.打开VirtualBox,选择“管理”菜单下的“虚拟介质管理”,我们可以看到Docker虚拟机用的虚拟硬盘的文件disk。
3.选中“disk”,然后点击菜单中的“复制”命令,根据向导,把当前的disk复制到另一个盘上面去。
4.回到VirtualBox主界面,右键“default”这个虚拟机,选择“设置”命令,在弹出的窗口中选择“存储”选项。
5.把disk从“控制器SATA”中删除,然后重新添加我们刚才复制到另外一个磁盘上的那个文件。
这是我设置好后的界面,可以看到我在步骤3复制的时候,复制到E:\VirtualBox\default\dockerdisk.vdi文件去了。
6.确定,回到PowerShell,我们使用docker-machine start default就可以启动新地址的Docker虚拟机了。确保新磁盘的虚拟机没有问题。就可以把C盘那个disk文件删除了。
【注意:不要在Window中直接去复制粘贴disk文件,这样会在步骤5的时候报错的,报错的内容如下,所以一定要在VirtualBox中去复制!】
Failed to open the hard disk file D:\Docker\boot2docker-vm\boot2docker-vm.vmdk. Cannot register the hard disk 'D:\Docker\boot2docker-vm\boot2docker-vm.vmdk' {9a4ed2ae-40f7-4445-8615-a59dccb2905c} because a hard disk C:\Users\用户名\.docker\machine\machines\default\disk.vmdk' with UUID {9a4ed2ae-40f7-4445-8615-a59dccb2905c} already exists. Result Code: E_INVALIDARG (0x80070057) Component: VirtualBox Interface: IVirtualBox {fafa4e17-1ee2-4905-a10e-fe7c18bf5554} Callee RC: VBOX_E_OBJECT_NOT_FOUND (0x80BB0001)
镜像加速
在国内使用Docker Hub的话就特别慢,为此,我们可以给Docker配置国内的加速地址。我看了一下,DaoCloud和阿里云的镜像加速还不错,另外还有网易的蜂巢。选一个就行了。以DaoClound为例,注册账号,然后在https://www.daocloud.io/mirror 就可以看到DaoClound提供给您的镜像加速的URL。然后到PowerShell中去依次执行:
docker-machine ssh default sudo sed -i "s|EXTRA_ARGS='|EXTRA_ARGS='--registry-mirror=加速地址 |g" /var/lib/boot2docker/profile exit docker-machine restart default
这样重启Docker后就可以用国内的镜像来加速下载了。
试一下下载一个mysql看看快不快:
docker pull mysql
下载完镜像,我们运行一个容器:
docker run -d -p 3306:3306 --name mysql -e MYSQL_ROOT_PASSWORD=123 mysql:latest
接下来我们打开windows下的mysql客户端,服务器地址填docker虚拟机的IP地址,通过docker-machine env可以看到,我这里是192.168.99.100,然后用户名root,密码123,这样我们就可以连接到docker容器里面的mysql了。
【注意,Docker容器是在VirtualBox的虚拟机里面,不是在Windows里面,所以不能用127.0.0.1访问】
相关推荐
docker-elk镜像下载(logstash、elasticsearch、kibana)6.2.2版本, 有文字教程安装,从docker安装、到镜像启动
本资源是安装有GCNv2_SLAM-CPU的ubuntu18.04镜像的百度云链接,因此需先安装docker虚拟机并具备一定基础。另外,GCNv2_SLAM-CPU的详细安装教程(ubuntu18.04)在链接:...
window7系统安装docker容器工具,可建立虚拟机、镜像、容器,搭建统一开发环境,移植方便,压缩里附带配置说明和开发环境命令文件《docker配置和环境搭建.txt》,其他window系统也可以借鉴。
文章目录Docker简介Docker的应用场景Docker 的优点Docker的架构Docker 和虚拟机的区别Centos7安装DockerDocker HelloWorld运行原理解析阿里云镜像仓库配置Docker镜像原理图Docker基本命令Docker镜像常用命令Docker...
2. Docker镜像的使用:Docker镜像是Docker的基石,可以理解为一种轻量级虚拟机。通过Docker镜像可以创建Docker容器,以运行应用程序。在使用Docker镜像时,需要了解镜像的来源、版本等信息,以便选择合适的镜像进行...
win7下docker安装配置手册,包含离线安装boot2docker.iso镜像文件,ssh登录docker,迁移docker虚拟机的虚拟硬盘等。
+ Docker 镜像可以理解为虚拟机模板,虚拟机模板就像停止运行的虚拟机,而 Docker 镜像就像停止运行的容器;作为一名研发人员,则可以将镜像理解为类(Class)。 ## 镜像和容器的关系 + 镜像可以理解为一种构建时...
Docker虚拟机常用命令 1. 先更新软件包 yum -y update 2. 安装Docker虚拟机 yum install -y docker 3. 运行、重启、关闭Docker虚拟机 service docker start service docker start service docker stop 4. 搜索镜像 ...
VirtualBox 软件来管理虚拟机,如何基于 Vagrant 快速创建多台虚拟机节点,以及在安装过程中一些错误信息的解决方案,安装完虚拟机以后,在上面部署了 Docker 容器,在容器中安装 MySQL、Redis、Nginx 等常用镜像,...
P1010_Docker配置阿里云镜像仓库 P1111_Docker基本命令 P1212_Docker镜像操作命令 P1313_Docker容器操作基本命令 P1414_Docker容器操作进阶命令 P1515_Docker容器宿主机端口映射 P1616_Docker commit提交运行...
介绍Docker核心概念,是什么、能干什么、Docker整体架构,和传统虚拟机的区别。什么是容器虚拟化技术,深刻理解镜像、容器、仓库的各种概念和操作。通过该课程,能够熟练掌握Dockerfile的编写和构建并使用Dockerfile...
这个 docker 文件依赖于我的其他包含和 基础镜像的存储库。当前版本Apache Hive(主干版) Apache Tez 0.5.2 Apache Hadoop 2.5.2 PostgreSQL 9.3(Hive 元存储后端)在 Mac OS X 上运行此步骤仅适用于 Mac OS X,...
Vmware安装CentOS7与docker环境配置,及镜像搜索、镜像拉取,容器启动、容器停止、容器删除等。
│ 02.Docker内部组件、虚拟机与容器区别.mp4 │ 03.Docker应用场景.mp4 │ 04.Linux安装Docker.mp4 │ 05.镜像管理-镜像与容器联系和存储驱动.mp4 │ 06.镜像管理-镜像管理常用命令.mp4 │ 07.容器管理-创建容器...
【课程大纲】 01-什么是docker 02-Docker在Windows下的安装 03-Docker在MAC下的安装 04-Docker在Linux下的安装1 05-Docker在Linux下的安装2 06-Docker有何用?...51-实训项目2--Docker下构建SSH服务镜像
【课程大纲】 01-什么是docker 02-Docker在Windows下的安装 03-Docker在MAC下的安装 04-Docker在Linux下的安装1 05-Docker在Linux下的安装2 06-Docker有何用?...51-实训项目2--Docker下构建SSH服务镜像
docker-machine boot2docker-17.09-ce 镜像文件 由于通过脚本到github.com拉取镜像较慢,特意将该文件上传. 原拉取该镜像命令为:docker-machine create --driver virtualbox default 使用方法 1.下载好后讲该文件...
本资源是安装有OpenMVS的ubuntu18.04镜像的百度云链接,因此需先安装docker虚拟机并具备一定基础。另外,OpenMVS的详细安装教程(ubuntu18.04)在链接:...
vm2docker 一个自动将基于 linux 的虚拟机转换为一组 docker 容器的库
【课程大纲】 01-什么是docker 02-Docker在Windows下的安装 03-Docker在MAC下的安装 04-Docker在Linux下的安装1 05-Docker在Linux下的安装2 06-Docker有何用?...51-实训项目2--Docker下构建SSH服务镜像