docker Win8.1 docker toolbox tomcat 将本机工作目录挂载到 tomcat 容器的工作目录
docker 这是个容器的技术。
对我来说 用命令
docker search tomcat
然后显示一堆目录
然后我再拉取其中的一个项目
docker pull tomcat
然后它就到了我的电脑里了,准确的说是我的Docker Toolbox 的virtualBox这个虚拟机的一个实例里。
实例其实没有系统层吧 控制它的是一个叫做docker-machine 的linux环境,
我在 DockerQuickstart 里的所有docker命令就是在操作这个 docker-machine 然后这个docker-machine再去操作虚拟机
拉去下来tomcat镜像之后,
我就可以启动了容器了
镜像就像一个类 容器就像从类里面new出来的一个对象
好的。但是这次我不仅仅要跑一个容器,
我要做的是要把tomcat的 一个目录挂载到我的工作目录,这样我就不用cp了
然后我执行 docker run -v /d/html:/usr/local/tomcat/webapps/ddd -d -p 8089:8080 --name nice tomcat
-v 是指挂载,/d/html是我的工作目录
/usr/local/tomcat/webapps/ddd 是我要存放网页的地方,因为webapps就是tomcat这个中间件的网页进入点嘛
-d是指后台进程运行,-p是指端口映射–name是指我的容器的names , tomcat是我的镜像
好的终于开始跑了
然后我在我的工作目录,也就是我的 window系统的D盘的html目录,我弄了一个index.html文件
我开始访问 http://启动DockerQuickstart之后给我的虚拟机的网址:8089/ddd
理想中 应该是要出现我的index.html的内容
然而并没有!!!
可怕,我来回试了好几次,都没有。
网上查了很久!看到一个说需要设置共享文件夹!好的我去virtualBox里面设置共享文件夹!!
然后还是不行!
后来我一想操作都是对虚拟机进行的操作,我就打开虚拟机看了下,
果然!!!被我发现了… 我那些挂在的目录 也就是我的工作目录。都生成在了虚拟机里面!!!
可怕!
头皮发麻!
我就赶紧想在这里面弄一个index.html看看!!
后来我发现无法生成!
ls -al 一看 我没权限!我的用户名叫做docker 组是default!
权限全是root的
查了一下资料!!!找到了改权限的linux命令
sudo chown docker html
好的终于改成了我自己了。
touch index.html
date >> index.html
打开网站一看 果然 内容是日期
美滋滋 终于明白了
后来又查了下
原来我在DockerQuickstar Terminal里用 docker-machine ssh default 也可以直接连接我的虚拟机
exit命令能退出虚拟机的操作界面了
现在想想
我真正要做的是 把我windows系统上的工作目录共享到虚拟机,然后 容器再挂载到虚拟机的那个我共享的目录,这样我就能打到我的目的了,把windows系统上的工作目录挂载到 容器里面!!
可怕,一不留神 5个小时就没了,只解决了这么一个小问题,但是对docker的架构和一些知识的理解又深了一点点,
可能最频繁的就是 一直在敲linux命令 熟悉了一下linux…