百度百科上说docker是:docker是一个开源的应用容器引擎,让开发者可以打包他们的应用,然后发布到任何流行的 Linux的机器上,也可以实现虚拟化,容器是完全使用沙箱机制,相互之间不会有任何接口
为了更让人明白泊坞窗,首先要区分容器状语从句:虚拟机两个概念:
在占用资源上,虚拟机需要有自己的操作系统,虚拟机一旦被开启,预分配给它的资源将全部被占用,而容器是和我们的宿主机共享硬件资源及操作系统,可以实现资源的动态分配。
为了清楚对比出二者的差异,如图所示差异:
在简单了解了VM和dokcer的区别后,我们简单了解下搬运工的概念,要了解搬运工,要先我们知道影像(镜像),容器(容器)和储存库(仓库),如图所示:
安装网上很多资料,我就推荐参考看菜鸟的教程,说的很详细,操作也很明了,链接如下
菜鸟链接:http://www.runoob.com/docker/windows-docker-install.html
在安装好了之后需要配置一个加速器,我使用的是阿里云的加速器,(自己登陆使用吧)
地址:https://account.aliyun.com/login/login.htm ? oouth_callback = https% 3A%2F%2Fcr.console.aliyun.com%2F#/ imageList
我刚下载下来的时候默认是Linux的的容器,所以要切换到窗口容器:如图
最后下载kitematic(搬运工可视化操作工具),下载好放到dokcer包里就行了
到这里安装这步骤已经差不多了
安装好后接下来进行一些基本操作:如下所示
官方文档中有进行操作的nginx的,
这里80:80是把docker80端口映射到windows80端口,进行访问, - name是别名,如果docker run执行nginx,如果nginx没有他会先拉取下来在run,这里特别要注意的是:在跑有些东西时,需要注意端口问题,比如运行mysql的时候如果你自己的mysql是运行的,那么docker是会跑错或者跑不起来,我们需要关闭服务,命令是:net start
关闭MySQL服务:net stop MySQL ;
开启MySQL服务器:net启动MySQL;
大致就这些操作了,我也整理了一部分命令:
拉取镜像:docker pull images(镜像)
运行镜像:docker run images(镜像)
查看docker 版本:
docker --version 查看镜像:docker images
查看运行状态的容器:docker ps
查看所有容器(包含退出状态):docker ps -a
查看容器日志:docker logs名称/ ID
实时查看容器日志:docker logs -f -t名称/ ID
启动容器(不进去):
docker start container_name / container_id 重启容器(不进去):docker restart container_name / container_id
停止容器:docker stop container_name / container_id
进去容器(需要启动):
docker attach container_name / container_id 启动镜像:dockerrun -t -i container_name / container_id / bin / bash
删除容器:
docker rm container_name / container_id 删除镜像:docker rmi image_name
提交容器修改(docker commit -a“作者名”-m“备注”容器名/ id镜像名
导出镜像:docker save -o保存路径/文件名镜像docker
save -o C:/Users/Public/Documents/dockerImages/ubuntu1604.zip
导出镜像:docker import路径镜像名
挂载文件夹:docker run -it -v路径:挂载文件夹镜像名
(docker run -it -v / c / XX / XX / XX / dockerFile:/ dockerFile XXXX)
最后我说个我自己碰到的问题,如果有兄弟有更好的解决方法请告诉下我,谢谢
我在分享文件夹(挂载)时候一直碰到一个问题:来自守护进程的错误响应:共享驱动器时发生错误(守护进程的错误响应:共享驱动器时发生错误)
我解决很久才解决,我一直都怀疑两个可能引起:1-守护进程的问题,2-权限问题,
对于守护进程,我看了官方文档,再看了自己配置,看了同事的配置排除了,只剩下权限问题,我先管理员运行,还是报错,后来我进行入如下操作:
1-Hyper-V的取消重启电脑,再选上重启电脑
2-在进入要共享的文件夹给了共享文件夹的权限(一开始只有只读权限)
3-进入GPEDIT.MSC打开了共享文件
4-还是没用我就重装了搬运工,发现就有用了,我个人觉得应该是前面2,3步应该是有效的,不过没弄明白,重装后就有用了,有知道怎么回事的请告知下
最后你有时候会误操作,是报坞器不在dcoker-user,(不要去改设置 - 用户那里),