1.安装

下载DockerToolbox,并安装。 
下载地址:https://dn-dao-github-irror.daocloud.io/docker/toolbox/releases/download/v17.06.2-ce/DockerToolbox-17.06.2-ce.exe。安装过程不多说了,和别的windows软件差别不大。安装完成后桌面有以下图标: 

2.开始

双击“Docker Quickstart Terminal”,出现下图: 

图中说的意思是,没有找到默认的Boot2Docker ISO文件,正在下载最新的发布包。但实际上,这个文件是在我们的安装路径已经有了。并且从github.com下载在国内几乎是不可能的!

找到刚才的安装路径,复制boot2docker.iso文件到C:\Users\jackie.docker\machine\cache目录下,关掉docker终端,重新打开。 
如下图:说明docker启动成功。至此,Windows7上的docker安装完成。 

3.部署tomcat

从仓库拉取tomcat镜像:

docker pull tomcat
  • 1

运行tomcat:

docker run -d -p 8080:8080 tomcat
  • 1

-d:后台运行 
-p 8080:8080 :端口映射,前一个8080代表虚拟机的端口,后一个8080代表docker容器的端口 
命令执行完成后,可以通过http://192.168.99.100:8080访问。 
这时只能在你自己的机器上访问,同一个局域网中的其他机器是不能访问的,原因是:Windows上的docker是运行在一个虚拟机里面的,看官方给的图: 
 
要让别的机器也访问到,需要配置一下虚拟机。设置如下: 

点击端口转发: 
 
这样配置完成后,别的机器也可以访问docker 容器了。

4.利用Xshell登录

Docker Quick Start不太好用,我们可以用第三方的ssh软件连接使用。这里我们使用Xshell。首先新建连接,如图: 
新建完成后,连接。 
用户名:docker 
密码: tcuser 
出现大鲸鱼的图像,说明连接成功。

5.加速器

使用docker时,经常需要从docker hub下载镜像文件,由于该网站在国外,访问的速度非常慢。阿里云提供了加速服务,当然,您得有一个阿里云的账号。 
阿里云开发者平台:https://dev.aliyun.com/search.html

注意:使用加速器要在创建虚拟机时配置,所以在创建虚拟机之前使用git bash来配置: 
开启git bash输入如下命令:

docker-machine -s "d:\docker" create --engine-registry-mirror=https://ndtun5mn.mirror.aliyuncs.com -d virtualbox default
  • 1

其中-s “d:\docker”指定虚拟机的存放路径。上面的命令,从阿里云拷贝,如下图: 

跑完上面命令后,docker加速器就加上了。

参考文章:windows7上使用docker容器

windows7上使用docker容器的更多相关文章

  1. .Net 6 WebApi 项目部署到 Linux 系统上的 Docker 容器

    1.创建一个基础的WebApi项目 注意:因为发布时候,Dockerfile文件必须和解决方案.cspro文件放在同级,所以建议勾上这个,当时遇到这个问题,导致打包镜像时找不到.cspro文件,搞了好 ...

  2. 本地jar包上传docker容器

    先安装docker的注册服务器: [root@VM_0_7_centos ~]# docker run -d -p : --restart=always --name registry2 regist ...

  3. mac系统上访问docker容器中的ip配置

    使用 mac系统,发现docker没有 docker0网桥,无法直接在宿主机上 访问 容器的ip, 在测试的时候有这种需求,而不是通过-p的方式,可以参考下面的连接,主要就是 修改 setting.j ...

  4. ubuntu18.10 上安装docker容器

    网上有的安装步骤太复杂,并且安装过程中容易出错,其它安装不难,只需一条命令即可. 安装成功后,使用命令查看docker状态 systemctl status docker 安装前更新下包源 sudo ...

  5. windows上启动docker容器报错:standard_init_linux.go:211: exec user process caused “no such file or directory” - Docker

    解决方案: standard_init_linux.go:190: exec user process caused "no such file or directory" - D ...

  6. windows上的docker容器内安装vim

    Reading package lists... Done Building dependency tree Reading state information... Done E: Unable t ...

  7. docker容器安全

    title: docker容器安全 tags: Docker,容器,安全策略 grammar_cjkRuby: true --- Docker容器的安全性 1.安全策略-Cgroup 1.限制Cpu ...

  8. 如何在Windows 10上运行Docker和Kubernetes?

    如何在Windows 10上运行Docker和Kubernetes? 在Windows上学习Docker和Kubernetes,开始的时候会让你觉得无从下手.最起码安装好这些软件都不是一件容易的事情. ...

  9. Docker容器跨主机通信之:直接路由方式

    一.Docker网络基本原理 直观上看,要实现网络通信,机器需要至少一个网络接口(物理接口或虚拟接口)与外界相通,并可以收发数据包:此外,如果不同子网之间要进行通信,需要额外的路由机制. Docker ...

随机推荐

  1. Application Architecture Determines Application Performance

     Application Architecture Determines Application Performance Randy Stafford AppliCATion ARCHiTECTuR ...

  2. Bash中的括号(三)

    1.两个小括号用来对整数进行算术运算和逻辑运算,比如. 例如给变量赋值: $ a=+; echo $a + $ (( b = + )); echo $b 1+1 只是一个字符串,而 b 就是一个算术表 ...

  3. vivado编译出错 [Synth 8-729] [Synth 8-787]

    http://www.cnblogs.com/pejoicen   打开vivado工程后,发现右上角如下图所示: 重新编译这两个ip核后,对整个工程synthesis,工程报错 [Synth 8-7 ...

  4. Android ART介绍

    1.ART之所以会比Dalvik快,是由于ART运行的是本地机器指令,而Dalvik运行的是Dex字节码.通过通过解释器运行. 虽然Dalvik也会对频繁运行的代码进行JIT生成本地机器指令来运行,但 ...

  5. Enable multithreading to use std::thread: Operation not permitted问题解决

    在用g++ 4.8.2编译C++11的线程代码后,运行时遇到了如下报错: terminate called after throwing an instance of 'std::system_err ...

  6. 如何在openwrt上实现 U盘的自动挂载

    U盘的自动挂载,分为两种场景 1.路由器先上电,然后插上U盘并自动挂载 2.路由器先插上U盘,然后上电并自动挂载 上述场景的实现,需要如下几个步骤: 1.支持如下模块: USB驱动模块:USB OHC ...

  7. golang json数组拼接

    2016年06月16日 15:38:25 阅读数:2575 标签: golangjson数组 更多 个人分类: golang   func main() { a := []byte(`{"P ...

  8. Windows动态库的使用 part one

    二.动态库程序 这篇写得比较乱,看不懂的可以跳part 2,直接上图片的.   动态库的使用: 4.3.1 隐式链接 动态库的隐式连接,需要动态库的 动态库文件".dll" , 动 ...

  9. 日期控件ie9失效

    WdatePicker.js在在IE 6,7,8下面多可以,就是在IE9里面无法打开. 解决方案: 方法一: $crossFrame:true做出修改.true改为false 方法二: <met ...

  10. php 判断是否在微信浏览器中打开

    <?php $a=false; $b=$_SERVER['HTTP_USER_AGENT']; if(strpos($b,"MicroMessenger")===false) ...