使用Docker Toolbox运行httpd容器,挂载自己的网页目录为什么不行?-要搞清楚Toolbox终端根目录结构、虚拟机VM的根目录结构的区别
来源:互联网 发布:sql sever 32位 编辑:程序博客网 时间:2024/05/18 15:27
任务:
本机运行环境为Win7+Docker Toolbox,
使用Toolbox创建了Docker虚拟机,
拟在Docker 虚拟机上运行httpd Docker容器。
到官网下载一个httpd镜像,docker pull httpd
自己的页面文件放到 c:/Users/win7用户/www 目录和c:/www 各一份,
使用virtualbox界面创建本地c:/www 共享成目录/www 给VM使用,
想启动一个httpd容器,正确显示自己的Web页面。
过程:
在 Docker Toolbox 终端上执行:
eval $(docker-machine env 虚拟机名),
切换到要管理的虚拟机上,
直接运行一个 httpd 容器,
docker run -dit -p 84:80 -v /c/Users/catty/www/:/usr/local/apache2/htdocs/ httpd
对外的映射的端口为84,容器内部的端口为80,
想把本地网页目录 /c/Users/catty/www 目录挂载到容器中,
官网介绍的容器内部httpd页面目录为/usr/local/apache2/htdocs/
问题:
运行以后,通过浏览器访问http://IP:84,
没有出现自己想要的页面?!
显示:index of / ,其他页面什么都没有,
到底是怎么回事?该问题出在哪里?
怎样才能正常运行自己的网页?
截图:
解决:
不能直接在Toolbox终端上运行docker run 的命令,
必须先使用“docker-machine ssh 虚机名”命令,
SSH 登录到VM虚拟机上,
在VM上执行docker run命令,才能正常访问页面。
原因:
1、没有搞清楚Toolbox 终端的根目录结构和虚拟机根目录结构之间的区别,
2、应该使用docker-machine ssh xxx 登录到虚机上执行docker run命令,
问题解释:
1、在Toolbox终端界面上,直接执行如下命令,为什么不能访问网页?
docker run -dit -p 93:80 -v /c/Users/catty/www/:/usr/local/apache2/htdocs/ httpd
答:/c/Users/catty/www/ 这个目录在VM 终端中能看到,
在Toolbox终端中,没有/c/Users/catty/www/这个目录,所以会无法访问。
2、在Toolbox 终端界面上,直接执行如下命令,为什么不能访问网页?
docker run -dit -p 94:80 -v /www:/usr/local/apache2/htdocs httpd
答:在Toolbox 终端上没有/www目录,
www目录是需要手工再VirtualBox管理界面中手工创建的共享目录(如图),
是共享给VM机器使用的,VM虚拟机上可以看到该 /www 目录,
以上命令都必须使用“docker-machine ssh 虚机名”命令,
ssh 登录到VM虚拟机上,在VM上执行docker run命令,
才能正常访问页面。
#这些宿主机与虚拟机之间的共享目录都是共享给VM的,
#在VM上才能看到/www和/c/Users/catty/www目录
#所以在Docker Toolbox上执行上述命令,
#会因为找不到目录,
#导致容器中的htdocs目录中为空
#运行容器的网站当然无法访问。
#另外:手工创建虚拟机与本地的WWW共享目录需要重新启动虚机才能生效,
#否则在虚拟机的终端上,还是无法看到 /www 目录。
#结束
阅读全文
0 0
- 使用Docker Toolbox运行httpd容器,挂载自己的网页目录为什么不行?-要搞清楚Toolbox终端根目录结构、虚拟机VM的根目录结构的区别
- linux 根目录的目录结构
- 使用 Docker Toolbox 实现自动启动一个容器,发布本机上的Web目录
- Android文件系统根目录的结构
- 根目录 主目录 家目录 根目录的主目录
- 根目录,子目录,当前目录的区别
- 在Docker Toolbox 终端中使用 vboxmanage.exe 程序在宿主机和虚拟机之间创建共享目录
- 使用Docker Toolbox快速搭建3节点的shipyard集群
- Windows10下的docker安装与入门 (一)使用docker toolbox安装docker
- Windows10下的docker安装与入门 (一)使用docker toolbox安装docker
- Windows10下的docker安装与入门 (一)使用docker toolbox安装docker
- tomcat6.0配置根目录为自己项目的目录
- toolbox、library 的组织
- 使用Docker Toolbox 创建v1.12.6版的Docker虚拟机的方法-注意正确使用本地文件 file:参数的路径名
- 【故障】旧版本的Docker Toolbox 无法正常运行的解决办法
- Docker Toolbox创建虚拟机时 --virtualbox-share-folder 共享目录参数的正确用法
- Android 制定的ROM包(文件系统根目录结构分析)
- linux根目录下各文件夹的结构说明及作用
- java 批量上传文件
- labview与机器视觉,labview调用opencv函数DLL
- 什么是垂直搜索引擎
- scala中的map
- Socket编程
- 使用Docker Toolbox运行httpd容器,挂载自己的网页目录为什么不行?-要搞清楚Toolbox终端根目录结构、虚拟机VM的根目录结构的区别
- Android探究之LayoutInflater setFactory
- 子进程的异步等待方式
- SQL Server 数据库恢复到某一时间点测试
- 数字化海洋装备设计制造信息平台
- Wordpress初探: 在服务器的虚拟机中安装Wordpress
- 关于「盲人如何使用手机?」的用户调研报告
- CString与char *互转总结
- 移动POS机应用迎来了春天嘛,手持POS机应用前景分析