3.docker-容器命令

Posted wang_peng

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了3.docker-容器命令相关的知识,希望对你有一定的参考价值。

目录

1.新建+启动

          2.当前所有正在运行的容器

3.退出方式:

4.启动已经停止的容器 

5.重启容器

6.停止容器

7.强制停止

8.删除容器

9.查看容器日志

10.容器内运行的进程

11.容器内部的细节

12.容器进入

13.拷贝文件

14.导入和导出

15.看是都挂载成功


1.新建+启动

docker run options image command [arg..]

options:

--name="容器新名字"

-d:后台运行程序

-it:交互式运行

-P: 随机端口

-p: 指定端口

-v /宿主机绝对目录:/容器目录

--restart=always 自动重启

--privileged=true 增加权限

--volumes-from 父类名  卷继承

--network= bridge, host,none, 自定义

docker run -it -privileged=true -v /宿主机绝对目录:/容器目录 ubuntu /bin/bash

docker run -it -privileged=true ubuntu:v1 /bin/bash

docker run -it -privileged=true1c3527a39ab9 /bin/bash

docker run -it -privileged=true --name=myu1 ubuntu bash

docker run -d -privileged=true redis:6.0.8

2.当前所有正在运行的容器

docker ps [opotions]

-a: 当前运行+历史运行
-l:  最近创建的容器
-n: 最近n个创建的容器
-q: 只显示容器编号

3.退出方式:

exit 容器停止
ctrl + p+q退出,容器不停止

4.启动已经停止的容器 

docker start 容器id或者名称

5.重启容器

docker restart 容器id或者名称

docker udpate --restart=always  容器id或者名称

6.停止容器

docker stop 容器id或者名称

7.强制停止

docker kill 容器id或者名称

8.删除容器

docker rm 容器id或者名称

docker rm -f $(docker ps -a -q)

docker ps -a -q | xargs docker rm

9.查看容器日志

docker logs 容器id或者名称

10.容器内运行的进程

docker top 容器id

11.容器内部的细节

docker inspect 容器id

12.容器进入

docker exec -it 容器id /bin/bash 重新创建终端和开起进程退出时容器不终止

docker attach -it 容器id /bin/bash 不会创建终端和开起进程退出时容器终止

13.拷贝文件

    docker cp  容器ID:容器内路径 目的主机路径

    docker cp 12233fsdfsd:/usr/local/contain.txt /tmp/1.txt

14.导入和导出

    docker export 容器ID > 文件名.tar

    cat 文件名.tar | docker import - 镜像用户/镜像名:tag

15.看是都挂载成功

    docker inspect 容器ID

    "Mounts": [
           
                "Type": "bind",
                "Source": "/tmp/u01_data",
                "Destination": "/tmp/docker_data",
                "Mode": "",
                "RW": true,
                "Propagation": "rprivate"
           
        ],

Docker容器常用命令

Docker容器命令
1.docker运行(创建)容器命令
2. docker查看容器命令
3. docker退出容器命令
4. docker启动容器命令
5. docker重启容器命令
6. docker停止容器命令
7. docker删除容器命令
8. docker进入容器命令
9. docker查看容器日志
10. docker查看容器内运行的线程
11. docker查看容器的内部细节
12. docker将容器中的信息拷贝到宿主机
13. docker提交自定义镜像

1.docker运行(创建)容器命令

  •  docker run 镜像名

1 | docker run tomcat
创建并运行容器命令,如果docker主机已经下载过tomcat,则该命令会直接创建一个tomcat的容器实例,否则会先去hub端拉取该tomcat镜像,默认是 :latest最新版,然后在运行镜像且生成一个tomcat容器实例对象。

  • docker run -it 镜像名

1 | docker run -i -t centos
-i : 表示创建要给交互式容器

-t:表示运行容器的同时创建一个伪终端,一般与 -i 一起使用

该命令的意思就是 创建一个名叫centos 的镜像对应的容器实例对象,并开启一个终端与之交互,例如 centos c = new centos();

镜像名centos是类,而运行时创建的容器 c 就是实例化的一个对象,注意这里的 c 是docker命令的,我们可以修改 c,自己设置

  • docker run -it --name 别名 镜像名

1 | docker run -it --name mycentos centos
  –name : 自定义容器别名

2. docker查看容器命令

  • docker ps

1 | docker ps
查看当前正在运行的容器对象,注意这里只显示 这个在运行中的容器信息,显示内容字段如下:

CONTAINER ID : 容器唯一id

IMAGE : 对应镜像名

COMMAND:启动方式

CREATED:创建时间

STATUS:当前状态

PORTS:占用端口

NAMES:容器名称(别名)

  • docker ps -l(小写的L)

1 | docker ps -l
-l(小写的L) : 默认的查看只会查看正在运行中的容器信息,而ps -l 会显示最近运行的一条容器信息

  • docker ps -a

1 | docker ps -a
-a : 显示所有运行过的镜像信息

  • docker ps -q

1 | docker ps -q
-q :表示只显示对应的容器id 信息

3. docker退出容器命令

  • exit

离开容器,并关闭容器,这种好比 要出门了,且要关灯,只有等下次重新启动该容器后,才会再次打开灯

  • Ctrl + p + q

暂时离开容器,还会回来,这种好比 临时出门,下去买包烟就回来,此时状态容器状态还是 up 运行中

4. docker启动容器命令

  • docker start 容器id

1 | docker start 容器id
这里需要注意不是每次都是重新根据镜像生成一个容器对象(docker run),而是将以往创建并启动过的容器再次运行起来,可以先通过 docker ps -a 命令 获取运行过的容器信息,选择要启动的容器进行启动即可,还要注意这个命令只会启动容器,而不会再次打开且进入终端(可以使用docker attach 或 docker exec等命令进入)

5. docker重启容器命令

  • docker restart 容器id

1 | docker restart 容器id
重新启动容器服务

6. docker停止容器命令

  • docker stop 容器id

1 | docker stop 容器id
这种停止方式比较温柔,会等待容器慢慢关闭,例如电脑关机,慢慢关机

  • docker kill 容器id

1 | docker kill 容器id
这种方式比较粗暴,但是速度快,直接结束线程,好比电脑直接长按关机

7. docker删除容器命令

  • docker rm 容器id

1 | docker rm 容器id
删除一个未运行的容器对象,支持多条删除,但是删除的容器id还未停止,则会删除异常

  • docker rm -f 容器id

1 | docker rm -f 容器id
-f : 强制删除,包括正在运行的容器也可以强制删除,支持多条删除

  • docker rm -f $(docker ps -aq)

1 | docker rm -f $(docker ps -aq)
组合命令,删除全部的容器信息

8. docker进入容器命令

  • docker attach 容器id

1 | docker attach 容器id
attach:可以再次进入该容器的伪终端控制台

  • docker exec -it 容器id

1 | docker exec -it 容器id
exec:该命令,可以实现不需要进入容器终端进行交互,可以在宿主机与容器进行交互,

 -it : 表明执行一个交互式的伪终端方式进入到容器中

9. docker查看容器日志

  • docker logs 容器id

1 | docker logs 容器id
查看该容器的日志信息

  • docker logs -f 容器id

1 | docker logs -f 容器id
-f :跟随打印最新的日志追加在最后面

  • docker logs -t 容器id

1 | docker logs -t 容器id
-t : 显示日志打印的时间戳

  • docker logs --tail 数量 容器id

1 | docker logs --tail 3 容器id
–tail 数量:只显示最新的指定数量的几条日志信息

10. docker查看容器内运行的线程

  • docker top 容器id

1 | docker top 容器id
top:查看容器内运行的线程信息

11. docker查看容器的内部细节

  • docker inspect 容器id

1 | docker inspect 容器id
查看容器的内部细节信息,是一个json串

12. docker将容器中的信息拷贝到宿主机

  • docker cp 容器id:容器文件路径 宿主机路径

1 | docker cp a57faaef1751:/tmp/yum.log ./aa.log
cp:通过cp命令,将a57faaef1751容器中的 tmp目录下的yum.log文件,复制到宿主机的当前目录下,命名为aa.log

13. docker提交自定义镜像

  • docker commit -a=作者名 -m=描述信息 原容器id 新容器名称

1 | docker commit -a="lonely" -m="test commit" 原容器id lonely/mytomcat:1.0
commit:提交镜像,将容器id对应的镜像修改后,使用commit生产 自定义镜像

lonely/mytomcat 表示镜像名

1.0 : 表示镜像版本

-a= : 表明作者

-m=:新镜像的描述信息

 

以上是关于3.docker-容器命令的主要内容,如果未能解决你的问题,请参考以下文章

3. Docker学习之路 —— Docker常用命令

3.docker容器的常用命令

Docker 学习笔记总结

Docker 学习笔记总结

Docker实践3: Docker常用命令(未完)

docker下容器怎么执行命令