一.辅助命令

# 1.安装完成辅助命令
        docker version    -------------------------   查看docker的所有版本信息
        docker info        --------------------------    查看docker的详细信息
        docker --help    --------------------------     查看所有帮助命令

                docker [command] --help    查看具体指令command的详细使用帮助

 二.镜像命令

# 1.查看本机中所有镜像
    docker images  [options]  --------------------------    列出本地所有镜像

       默认        列出所有镜像信息
        -a            列出所有镜像(包含中间映像层)
        -q            只显示镜像id

# 2.搜索镜像
    docker search [options] 镜像名    -------------------    去dockerhub上查询当前镜像
        -s 指定值        列出收藏数不少于指定值的镜像
        --no-trunc      显示完整的镜像信息

# 3.从仓库下载镜像
    docker pull 镜像名:版本号(Tag)  ----------------- 从远程仓库下载镜像到本地

# 4.删除镜像

    docker image rm [options] 镜像名:Tag | 镜像ID --------------- 删除镜像

        默认:删除镜像,注意镜像之上没有正在运行的容器实例才能删除

        -f : 强制删除镜像(不安全)
   

   docker rmi [options] 镜像名:Tag | 镜像ID  --------------- 简化写法

        默认:删除镜像,注意镜像之上没有正在运行的容器实例才能删除
        -f        强制删除

# 5.导入镜像

  docker load -i tar类型的镜像文件名称  --------------- 将打包的镜像导入本地docker仓库

三. 容器命令

# 1.运行容器
    docker run [options] 镜像名:Tag | 镜像ID    ---------------------  基于镜像新建并启动容器
             默认                     默认启动一个容器(名字随机)

             --name                 为容器起一个名字
            -d                          启动守护式容器(在后台启动容器)
            -p                          宿主机与容器端口映射(宿主机端口:容器监听端口 )

   例:docker run -d(保持后台运行) -p 8080(宿主机端口):8080(容器监听端口) --name tomcat01(容器名称) tomcat(指定镜像)

docker rabbitmq 查看账号密码 docker command 查看_数据

# 2.查看运行的容器
    docker ps  [options]  --------------------------    列出所有正在运行的容器

      默认        列出所有运行中的容器信息     
      -a            列出正在运行的和历史运行过(且没被删除)的容器(所有状态
      -q            静默模式,只显示运行中的容器编号

# 3.停止 |关闭 |重启 容器(没被删除)
    docker start   容器名字或者容器id  --------------- 开启容器
    docker restart 容器名或者容器id    --------------- 重启容器
    docker stop  容器名或者容器id   ------------------ 正常停止容器运行
    docker kill  容器名或者容器id     ------------------ 立即停止容器运行

# 4.删除容器(不会出现在历史里)

    docker rm 容器id和容器名   ----------------------    删除停止运行的容器
    docker rm -f 容器id和容器名     --------------------------    强制删除容器
    docker rm -f $(docker ps -aq)   --------------------------    强制删除所有容器(嵌套查询$

# 5.查看容器内的进程
    docker top 容器id或者容器名 ------------------ 查看容器内的进程列表

# 6.查看查看容器内部细节
    docker inspect 容器id | 容器名称    ------------------  查看容器内部细节

# 7.查看容器的运行日志
    docker logs [OPTIONS] 容器id或容器名    ------------------ 查看容器日志
       -t             加入时间戳
       -f             跟随最新的日志打印(实时)
       --tail N(n)    显示日志最后n条

# 8.进入容器内部环境
    docker exec [options] 容器id ------------------ 进入容器内交互执行命令
        -i        以交互模式运行容器,通常与-t一起使用
        -t        分配一个伪终端    shell窗口   bash

  例: docker exec -it 容器id|容器名称 bash ===> 执行exit退出

# 9.容器和宿主机之间复制文件
    docker cp 文件|目录名 容器id(或名称):/容器资源路径  ------------ 将宿主机复制到容器内部
    docker cp 容器id:容器内资源路径 宿主机目录路径  -------------- 将容器内资源拷贝到主机上

# 10.数据卷(volum)实现与宿主机共享目录文件(启动时指定)
    docker run -v 宿主机的路径|任意别名:/容器内的路径 镜像名:Tag

#1.自定义数据卷目录 docker run -d -p 8081:8080 --name tomcat02 -v /root/apps:/usr/local/tomcat/webapps tomcat #注意: # 1.宿主机路径必须是绝对路径,宿主机目录在创建启动容器时会覆盖容器内相应目录的内容。若宿主机目录为空,则会将容器内目录拷贝到宿主机中。 # 2.宿主机与容器共享文件/目录,容器启动后任何一方改变目录内容都会随之变化 # 3.容器被删除/停止时,不会影响宿主机共享文件内容,因此可以用来备份容器(一次备份,处处可用) #2.自动数据卷目录 docker run -d -p 8081:8080 --name tomcat02 -v aa:/usr/local/tomcat/webapps tomcat #注意: # 1.aa代表一个数据卷的别名,若该别名的数据卷存在则会初始化容器共享目录; # 2.若该别名的数据卷不存在,则会在docker运行容器时自动在宿主机中创建一个相应的空目录,并将容器目录文件复制到宿主机中

 # 11.打包镜像
        docker save 镜像名:Tag  -o  文件名称.tar

# 12.载入镜像
        docker load -i   文件名称.tar

# 13.容器打包成新的镜像
       docker commit -m  "描述信息"  -a  "作者信息"  (容器id或者名称)打包的镜像名称:标签