美文网首页
Docker常用命令

Docker常用命令

作者: 神小六 | 来源:发表于2020-11-06 20:27 被阅读0次

    帮助命令

    docker version              #显示docker的版本信息
    docker info                #显示docker的系统信息,包括镜像和容器的数量
    docker 命令 --help         #帮助命令
    

    官方帮助文档地址

    镜像命令

    docker images   #查看所有本地主机上的镜像
    
    [root@izuf65v2vdwv6tsfc0e0ltz ssh]# docker images
    REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
    mysql               5.7                 1b12f2e9257b        2 weeks ago         448MB
    centos              latest              0d120b6ccaa8        2 months ago        215MB
    #解释
    REPOSITORY           #镜像的仓库源
    TAG                  #镜像的标签
    IMAGE ID             #镜像的ID
    CREATED              #镜像的创建时间
    SIZE                 #镜像的大小
    #可选项
    -a,--a         #列出所有的镜像
    -q,--quiet     #只显示镜像的id
    
    docker search搜索命令
    [root@izuf65v2vdwv6tsfc0e0ltz ~]# docker search mysql
    NAME                              DESCRIPTION                                     STARS               OFFICIAL            AUTOMATED
    mysql                             MySQL is a widely used, open-source relation…   10130               [OK]
    mariadb                           MariaDB is a community-developed fork of MyS…   3727                [OK]
    #可选项
    --filter=STARS=3000  #搜索出的镜像就是STARS大于3000
    
    docker pull下载镜像
    #下载镜像 docker pull 镜像名[:tag]
    [root@izuf65v2vdwv6tsfc0e0ltz ~]# docker pull mysql:5.7  
    5.7: Pulling from library/mysql  #如果不写tag默认是最新版本
    bb79b6b2107f: Pull complete
    49e22f6fb9f7: Pull complete
    842b1255668c: Pull complete
    9f48d1f43000: Pull complete
    c693f0615bce: Pull complete
    8a621b9dbed2: Pull complete
    0807d32aef13: Pull complete
    f15d42f48bd9: Pull complete
    098ceecc0c8d: Pull complete
    b6fead9737bc: Pull complete
    351d223d3d76: Pull complete
    Digest: sha256:4d2b34e99c14edb99cdd95ddad4d9aa7ea3f2c4405ff0c3509a29dc40bcb10ef
    Status: Downloaded newer image for mysql:5.7
    docker.io/library/mysql:5.7    #真实地址
    
    docker rmi删除镜像
    docker rmi -f 容器id                    #删除指定的镜像
    docker rmi -f 容器id 容器id 容器id       #删除多个镜像
    docker rmi -f $(docker images -aq)      #删除全部的镜像
    

    容器命令

    新建容器并启动
    docker run [可选参数] image
    #参数说明
    --name="Name"     #容器名称   tomcat1  tomcat2,用来区分容器
    -d                #后台方式运行
    -it               #使用交互方式运行,进行容器查看内容
    -P              #使用容器的端口-P  8080:8080
    -p              #指定随机端口
    
    列出所有的运行的容器
    docker ps   #列出当前正在运行的容器
    -a          #列出当前正在运行的容器+历史运行过的容器
    -n-?        #显示最近创建的容器
    -q          #只显示容器的编号
    
    退出容器
    exit           #直接停止并退出
    Ctrl + P + Q   #容器不停止退出
    
    删除容器
    docker rm id                    #删除指定容器,不能删除正在运行的容器,rm-f强制删除
    docker rm -f $(docker ps -aq)   #删除所有容器 
    
    启动和停止容器
    docker start id    #启动容器
    docker restart id  #重启容器
    docker stop id     #停止容器
    docker kill id     #强制停止容器
    

    常用其他命令

    后台启动容器
    #docker run -d 镜像名
    docker run -d centos
    #docker容器使用后台运行,就必须要有一个前台进程,docker发现没有应用,就会自动停止
    
    查看日志
    docker logs
    -tf              #显示所有日志
    --tail number    #要显示日志条数
    
    查看容器进程
    #docker top 容器Id
    [root@izuf65v2vdwv6tsfc0e0ltz ~]# docker top a38095c1b5f7
    UID                 PID                 PPID                C                   STIME               TTY                 TIME                CMD
    root                16481               16450               0                   20:04               pts/0               00:00:00            /bin/bash
    
    查看镜像的元数据
    docker inspect 容器id
    
    进入当前正在运行的容器
    #命令
    docker exec -it 容器id bashShell
    #测试
    [root@izuf65v2vdwv6tsfc0e0ltz ~]# docker exec -it a38095c1b5f7 /bin/bash
    [root@a38095c1b5f7 /]# ls
    bin  dev  etc  home  lib  lib64  lost+found  media  mnt  opt  proc  root  run  sbin  srv  sys  tmp  usr  var
    #方式二
    docker  attach 容器id
    #docker exec     进入容器后开启一个新的终端,可以在里面操作(常用)
    #docker  attach  进入容器正在执行的终端,不会启动新的进程
    
    从容器内拷贝文件到主机上
    docker cp 容器id: 容器内路径  目的地主机路径
    #测试
    [root@izuf65v2vdwv6tsfc0e0ltz /]# docker cp a38095c1b5f7:/test.java /opt/
    [root@izuf65v2vdwv6tsfc0e0ltz /]# cd /opt/
    [root@izuf65v2vdwv6tsfc0e0ltz opt]# ls
    containerd  jvm.zip  test.java
    [root@izuf65v2vdwv6tsfc0e0ltz opt]#
    

    附一张字典图


    字典图.png

    相关文章

      网友评论

          本文标题:Docker常用命令

          本文链接:https://www.haomeiwen.com/subject/lyfxbktx.html