前两篇文章(Docker系列学习(二),Docker系列学习(三))主要介绍了docker的最基本的容器和镜像的命令,完成了上面章节的学习就对docker有了一个最最基本的了解,下面这一章节将继续介绍docker中关于容器的其他常用命令。
docker run -d ubuntu:1.0
8fa340a12b6cc48335c24d7881ce1e2a4ee2d5b41c05280373e79fe340ff9a33
通过对run命令添加参数-d可以后台启动容器。
不过要注意由于这个ubuntu:1.0没有前台进程,因此docker会以为没有程序,docker会直接结束了,因此我们使用docker ps看不到这个容器,不过我们使用docker ps -a就能看到已经被停止的容器。
docker logs [可选参数] 容器ID
常用参数 | |
-f | 跟踪日志输出 |
-t | 显示时间戳 |
--tail n | 显示日志尾部n条数据 |
我这里显示一下某个容器的日志信息:
这里显示在这个容器中操作了两次退出
docker top [容器id]
通过这个命令就可以查看到正在运行中的容器中所有的进程。
我这里启动了一个ubuntu的容器,并查看他的进程
docker inspect [OPTIONS] 容器id
接下来我们就以启动的ubuntu容器作为示例,看一下会显示出那些信息。
可以看到内容有很多,这些是以json格式来输出的,我们可以用json在线格式化工具就很好看了 。
比如容器的全称ID,创建时间(Created),当前容器状态(State),由那个镜像创建的(Image),其中Config这个参数打开,里面包含的是这个ubuntu系统内部参数设置(比如环境变量等等)。
方式一:
docker exec -it 容器id /bin/bash
上述代码是进入指定正在运行的容器的代码。
例如,我们进入到之前开启的那个容器中去。
方式二:
docker attach 容器id
这样也是可以进入容器中的,不过要注意这两种方式进入有些许不同。
第一种方式进入容器会在容器系统的内部开设另一个新的终端,第二种方式是进入到容器当前正在执行的终端。
docker cp 容器id:容器中文件的路径 拷贝到主机中的路径
我在刚才开启的ubuntu系统的根目录下创建了一个test.txt,我可以使用下面的命令将这个文件拷贝到主机的桌面上。(注意这个命令需要在主机的命令行中执行,而不是在容器中执行)
docker cp d3d2c02d1358:/test.txt /home/g4/桌面