Linux----------常用容器命令

一、帮助命令

docker version   查看版本
docker info         描述docker详细信息
docker  --help     帮助

二、镜像命令

2.1 images

  • docker images 列出本地主机镜像
各个选项说明:
-a              列出本地所有的镜像(含中间映像层)
-q             只显示镜像ID
--digests  显示镜像的摘要信息
--no-trunc 现在完整的镜像信息
展现页面选项说明:
REPOSITORY:表示镜像的仓库源
TAG:镜像的标签
IMAGE ID:镜像ID
CREATED:镜像创建时间
SIZE:镜像大小
同一仓库源可以有多个TAG,代表这个仓库源的不同版本,可使用REPOSITORY:TAG来定义不同的镜像,如果不指定一个镜像的版本标签,默认是XX:latest镜像

官网:https://hub.docker.com

docker search XX(镜像名) 查询是在国外官网上查询,pull是拉取你配置的仓库源

各个选项说明:
--no-trunc 显示完整的镜像描述
-s   列出收藏数不小于指定值的镜像
--automated 只列出automated build类型的镜像
展现页面选项说明:
NAME 名字
DESCRIPTION 描述
STARS  点赞数
OFFICIAL 官方版
PULL 下载量

2.3 pull

  • docker pull xx(镜像名)
    如果不指定版本,默认pull的是latest版本

2.4 rmi

  • 删除单个、多个、全部容器的方式:
    docker rmi XX(容器ID)
    docker rmi -f XX XX
    docker rmi -f $(docker images -qa)

  • 各个选项说明:
    -f 强制删除

三、常用容器命令

  • 有镜像才能创建容器,这是前提
    docker pull centos

  • 新建并启动容器
    docker [OPTION] IMAGE [COMMAND] [ARG]
    docker run -it --name centos1 centos

option选项说明:
--name 为容器指定一个名称
-d 后台运行容器,并返回容器ID,即启动守护式容器
-i 以交互式模式运行容器,通常与 -t同时使用
-t 为容器重新分配一个伪输入终端
-P 随机端口映射
-p 指定端口映射,有四种格式:
       ip:hostPort:containerPort
       ip::containerPort
       hostPort:containerPort
       containerPort

进阶:指定容器目录data2做 宿主机目录data1的映射目录,类似rsync同步,可以加读写权限或ro
docker run -it -v /data1:/data2:ro centos(镜像名)

  • 列出当前运行的容器

docker ps [OPTIONS]

option说明:
-a 列出当前所以正在运行的容器+历史上运行过的
-l 显示最近创建的容器
-n 显示最近n个创建的容器
-q 静默模式,只显示容器编号
--no-trunc 不截断输出
  • 启动容器
    docker start XX(容器名或ID)

  • 停止容器
    docker stop XX(容器名或ID)

  • 强制停止容器
    docker kill XX(容器名或ID)

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

  • 删除容器
    删除单个、多个、全部容器的方式:
    docker rmi XX(容器ID)
    docker rmi -f XX XX
    docker rmi -f $(docker images -qa)

四、重点命令

docker机制:容器后台运行就必须有一个前台进程,不然会自动退出,建议将运行的程序以前台进程的形势运行

  • 启动守护式容器
    docker run -d XX(容器名)
    docker run -d XX /bin/sh -c "while true;do echo hellp;sleep 2;done"

  • 查看容器日志
    docker logs -f -t
    -t 加入时间戳
    -f 跟随最新的日志打印
    --tail 数字,显示最后多少条

  • 查看容器内运行的进程
    docker top XX(容器名)

  • 查看容器内部细节
    docker inspect XX(容器名)

  • 进入正在运行的容器并以命令行交互
    docker exec -it XX(容器名) bashshell
    docker attach XX(容器名)
    两者区别:
    attach是直接进入容器启动命令的终端,不会启动新的进程
    exec是在容器中打开新的终端,并且可以启动新的进程,类似ssh,既能进去也能直接获取结果

  • 从容器内拷贝文件到主机上
    docker cp XX(容器名):容器内路径 目的主机路径
    docker cp centos:/tmp/log /root

  • 提交容器副本使之成为一个新的镜像
    docker commit -m=(描述信息) -a=(作者) XX(容器ID) image(镜像名):[标签名]
    docker commit -m="tomcat without docs" -a="wang" 61b21f4257ea ace/tomcat:1.2

 [root@133 ~]# docker images
REPOSITORY              TAG                 IMAGE ID            CREATED             SIZE
ace/tomcat              1.2                 20f1c934cb7b        19 seconds ago      506 MB
docker.io/tomcat        latest              6e30b06a90d3        33 hours ago        506 MB
docker.io/redis         latest              f7302e4ab3a8        2 days ago          98.2 MB
docker.io/nginx         latest              4733136e5c3c        2 days ago          126 MB
docker.io/mysql         latest              62a9f311b99c        2 days ago          445 MB
docker.io/centos        latest              9f38484d220f        5 months ago        202 MB
docker.io/hello-world   latest              fce289e99eb9        7 months ago        1.84 kB

五、

原文地址:https://www.cnblogs.com/wangchengshi/p/11364796.html