声明

  • 此文只针对 win7、win10 家庭版等用户操作系统,因为这些系统无法使用 windows 的 Hyper-V 虚拟技术。只能借助于 Virtual Box 虚拟机来使用 docker。

Docker 相关配置

Docker Toolbox 的安装

  • 在确认你只能使用 Virtual Box 的方式安装 docker 后,你需要下载 Docker Toolbox,安装方式参考官方文档。或者你可以直接下载最新的发行版 Docker Toolbox
  • 安装 Docker Toolbox,会帮助你安装 3 个软件 —— Docker Quikstart、Oracle VM VirtualBox、Kitematic。也就是说你不必特意地去安装其中的某一个。

Docker Toolbox 的启动

  • 安装完后,打开 Docker Quikstart 即可,它会帮助你启动 Virtual Box 等相关软件。有时候,可能会遇到错误,可以试试 卸载 VirtualBox、Kitematic 重新安装一遍 Docker Toolbox。

docker 客户端

  • Docker Quikstart 打开之后是一个命令行工具,也是 docker 的客户端,可以通过一些命令操作 docker 服务。

配置共享目录

  • 虽然在 Docker Quikstart 中可以通过 /d/path 的路径访问目录,但是当你启动容器时,目录映射可能出现异常,进入容器后发现映射的目录中的文件都未正常映射。
  • VirtualBox 默认是有一个共享目录的 —— /c/Users/
  • 如果你启动容器时要映射的目录和文件都位于这个目录下,你基本不用做任何调整。如果你把你的代码文件(也就是启动 docker 容器时要映射的目录/文件)放在了其他的盘,比如 d 盘,而它却不在 VirtualBox 配置的共享目录中,此时你需要手动配置一下共享目录。
  • 可以新增共享目录,但是填写配置目录名需要注意:
  • 新增好共享目录后,需要重启,到 Docker Quikstart 中运行命令 docker-machine restart default 即可完成重启。稍后便能再次使用 docker 相关命令。
  • 前面配置的代码目录是 /d/docker/work_code,因此当我们启动容器时的目录映射可以这样写:docker run -it -v /d/docker/work_code/project1:/opt/wwwroot/project1 docker_php /bin/bash
  • 也就是说,我们是通过绝对路径 /d/docker/work_code/project1 的方式来进行宿主机目录的映射的。
  • 此时进入容器查看,目录的映射是正常的,代码文件也都是存在的。
  • 后续的 docker 使用就像普通使用 docker 一样即可。

访问

  • 当 docker 配置完成之后,启动容器,我们可通过浏览器或 postman 作为客户端来访问验证。使用 VirtualBox 方式的 docker 的容器不是通过 127.0.0.1 来访问的,而是要通过访问虚拟机的 ip 来访问。因此,在 Docker Quikstart 中通过 docker-machine ip 来查看你机器上的虚拟机的 ip。然后通过 ip + 端口号 的方式来访问启动的服务。
$ docker-machine.exe ip
192.168.99.100

结语

  • 通过上面的设置,出现问题最主要的原因是共享目录没有设置对。因此只要按照上述“设定共享目录”进行配置,即可正常使用。

win 下 docker 环境配置的更多相关文章

  1. win下jdk7环境变量的配置

    win下jdk7环境变量的配置: 单击计算机(Computer),选择属性(Properties),选择高级系统设置(Advanced systems settings), 选择环境变量(Enviro ...

  2. centos7系统下 docker 环境搭建

    运行环境: VMware Workstation Pro 在虚拟机中安装centos7系统, 选择最小安装, 网络连接方式选择的桥接(与宿主机在同一IP段)centos7一定要安装64位, docke ...

  3. win7下docker环境搭建nginx+php-fpm+easyswoole+lavarel+mysql开发环境

    win7环境基础在上一篇win7下docker环境搭建nginx+php-fpm+easyswoole开发环境中已经详细叙述搭建完成 本篇文章将叙述如何在上述基础上搭建laravel开发环境,这个其实 ...

  4. Java应用在docker环境配置容器健康检查

    在<极速体验docker容器健康>一文已体验了docker容器健康检查功能,今天就来给java应用的容器加入健康检查,使应用的状态随时都可以被监控和查看. 实战环境信息 操作系统:macO ...

  5. 【转存】阿里云服务器下 LAMP 环境配置 —— 基于 CentOS 6.3

    阿里云服务器下 LAMP 环境配置 —— 基于 CentOS 6.3  Posted on 2016年2月10日 by  学院君 1.Apache 配置 —————————————————– vi / ...

  6. Windows 下 MSYS2 环境配置和 MinGW-w64 C++ 环境配置

    Windows 下 MSYS2 环境配置和 MinGW-w64 C++ 环境配置 1.简介 本文主要是 Windows 下 MSYS2 环境配置和 MinGW-w64 C++编译环境配置方法 2.下载 ...

  7. windows下androidNDK环境配置

    一:什么是NDK? NDK 提供了一系列的工具,帮助开发者快速开发C(或C++)的动态库,并能自动将so 和java 应用一起打包成apk.这些工具对开发者的帮助是巨大的. NDK 集成了交叉编译器, ...

  8. win下python环境搭建以及安装pip、django

    1. 安装python并配置 下载安装python,这里我下载的是python2.7,听说2.7比较好用 地址:https://www.python.org/downloads/source/ 记住你 ...

  9. win7下docker环境安装

    最近公司涉及到对docker容器引擎的使用,所以就在网上各种搜索,由于是win7系统,所以在使用上更是麻烦,遇到各种错误就是无法成功启动docker,经过两天的各种尝试下,终于安装成功,在此记录一下使 ...

随机推荐

  1. C# 图片转为Base64

    /// <summary> /// 图片转Base64 /// </summary> /// <param name="ImageFileName"& ...

  2. 【spring boot】SpringBoot初学(3)– application配置和profile隔离配置

    前言 github: https://github.com/vergilyn/SpringBootDemo 说明:我代码的结构是用profile来区分/激活要加载的配置,从而在一个project中写各 ...

  3. 小希的迷宫 HDU - 1272

    #include<iostream> #include<algorithm> #include<cstring> using namespace std; cons ...

  4. PAT (Basic Level) Practice (中文)1023 组个最小数 (20 分) (排序)

    给定数字 0-9 各若干个.你可以以任意顺序排列这些数字,但必须全部使用.目标是使得最后得到的数尽可能小(注意 0 不能做首位).例如:给定两个 0,两个 1,三个 5,一个 8,我们得到的最小的数就 ...

  5. NOI Online能力测试游记:退役选手的自娱自乐

    2020年2月17日早上8点,CCF发布了关于举办NOI Online能力测试的通知. 为给选手提供一个锻炼的机会,CCF拟举办一场NOI Online能力测试.测试分为入门组和提高组,每组限额报名3 ...

  6. 360独角兽实习,连载周记(gnuradio 低功耗蓝牙BLE 综合工具模块编写)

    (有点乱,之后会有整理) 最近在用写一套gnuradio的OOT模块,主要用来进行BLE嗅探的,github上有了一些工具,可是他们并没有很好的模块化,于是打算自己写一个,这样以后做一些其他的项目,模 ...

  7. "Chrome的network中无法显示OPTIONS请求"的解决方案

    目录 #事故现场 #分析及解决方法 #参考 #事故现场 在前端发送一个跨域请求的时候,要先发送个options请求,从而获知服务端是否允许该跨域请求. 跨域资源共享标准新增了一组 HTTP 首部字段, ...

  8. css权重及计算

    一.一般而言:!important--->行间样式--->id--->class | 属性--->标签选择器--->通配符 二.权重值 !important        ...

  9. HTTP 协议的 8 种请求类型介绍

    HTTP 协议的 8 种请求类型介绍 HTTP 协议中共定义了八种方法或者叫“动作”来表明对 Request-URI 指定的资源的不同操作方式,具体介绍如下: OPTIONS:返回服务器针对特定资源所 ...

  10. Ubuntu 16 服务器配置PHP+MySQL+Apache环境

    一.获取软件包资源并进行资源更新 apt是Ubuntu上默认的软件包管理器,使用它可以很容易进行各种软件安装,而且会自动帮你安装可能需要的依赖关系. 另一个强大的软件管理工具是 dpkg,可以用于安装 ...