docker是我最近工程开发上急需使用的一个开发工具,但是由于本人“深入沉浸”windows系统,并且对于Linux系统不太熟悉,所以学习docker很多困难,因此用这个博客来记录一下很简单的docker的常用操作。本文是以Linux系统为基础,windows系统对于docker的安装太繁琐了,而且有windows版本的限制,强烈推荐使用Linux系统。本文参考了很多博主的经验分享,如果大家像要看原文可以到本文底部查看原网站。
由于安装docker的方式太多,网上一搜就有,因此就不写这一部分了。
一般来说Linux安装好docker之后,就可以直接使用docker这个命令了,如果没有启动docker(守护进程)会出现以下命令报错:
Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?
可以使用以下代码进入:
service docker start
其实一般说的关闭docker其实就是关闭docker的守护进程,一般来说可以不用管这个(我现在水平还不到探讨这个的水平)
service docker stop
查看现有镜像:
docker images
其实可以看到返回了现有镜像的列表,下面来解读以下返回的内容:
删除镜像有两种方法,一般是通过ID删除和通过TAG删除,刚才有提到TAG是可以重复的,对于同一个镜像可以有多个标签,所以如果采用指定标签的方法来删除镜像,只会删除你指定的REPOSITORY仓库名+TAG标签名的那个镜像。
docker rmi hello-world:latest
上面的命令就是删除hello-world这个仓库里的标签为latest的镜像。
不过要注意到这样删除是不能删除正在被容器使用的镜像,例如有以下报错:
这个时候可以使用 docker rmi -f hello-world:latest的命令强制删除,不过不推荐这样的方式,正确方法是:
对于Docker来说,image是静态的,类似于操作系统快照,而container则是动态的,是image的运行实例。因此启动镜像就需要创建容器。
有一个image名称为ubuntu,那么比如现在我们启动这个image的container并且进入到这个container的bash命令行中:
docker run -t -i ubuntu /bin/bash
命令行的理解如下:
docker run:启动container(这种方式是基于镜像的启动,会创建一个新的容器)
ubuntu:你想要启动的image
-t:进入终端
-i:获得一个交互式的连接,通过获取container的输入
/bin/bash:在container中启动一个bash shell
上图就是成功查创建了一个容器,并进入到了,容器的ID是2fa8d7535635,这个时候容器就已经在运行了。
如果要退出容器就直接在命令行输入 exit,就可以退出了。
查看正在运行的容器
docker ps
可以看到我们之前运行的容器已经显示出来了(这个是在新窗口执行的命令行,原来的那个窗口没有exit容器),如果exit容器之后,用这个命令行就看不到。如果想要查看所有的容器,可以使用下面的命令行。
docker ps -a #查看无论运行还是没有运行的容器
可以看到就算退出容器之后依然有可以查看到对应的容器信息。
参考网址:
https://www.cnblogs.com/520yang/articles/8744454.html
https://blog.csdn.net/woshimeihuo/article/details/90209779
https://blog.csdn.net/acmman/article/details/84449092
https://www.cnblogs.com/quanxiaoha/p/10542278.html
https://www.cnblogs.com/linjiqin/p/8608975.html