Docker常见帮助命令、镜像命令、容器命令

1.帮助命令

docker version   //验证docker的版本
docker info      //查看docker的信息
docker --help    //帮助命令,可查看常见的命令

2.镜像命令

docker images      
//列出本地主机上的镜像
//列出的选项说明 
    REPOSITORY  镜像的仓库源   
    TAG     镜像的标签
    IMAGE ID 镜像ID
    CREATED  镜像创建时间
    SIZE     镜像的大小
//常见的参数说明
-a :  列出本地所有的镜像(包含中间映像层)
-q : 只显示出镜像ID,可以与-a同时使用,-qa
--digests : 显示镜像的摘要信息
--no-trunc : 显示完整的镜像信息

docker search xxx  
//在docker hub上查找某个镜像,xxx为某个镜像的名称,例如 docker search tomcat
//常见的参数说明
--no-trunc : 显示完整的镜像描述
-s : 列出收藏数不小于指定值的镜像
--automated : 只列出automated build 类型的镜像

docker pull xxx   
//从docker hub(配置阿里云镜像加速后是阿里云) 上下载某个镜像,xxx为某个镜像的名称,例如 docker pull nginx,不写版本号表示使用的是最新版的,可以使用docker pull nginx[:版本号]下载指定版本的镜像

docker rmi xxx     
//在本地删除某个镜像,xxx为某个镜像的名称ID
//删除单个镜像 docker rmi -f 镜像名:TAG,例如 docker rmi -f tomcat ,-f表示强制删除
//删除多个镜像 docker rmi -f 镜像名1:TAG 镜像名2:TAG
//删除全部镜像 docker rmi -f $(docker images -qa)

3.容器命令

//有镜像才能有容器,下载一个centos镜像进行演示,使用 docker pull centos 命令 下载镜像

启动交互式容器

//新建并启动容器,同时进入容器
docker run -it xxx  //例如  docker run -it --name mycentos1127 centos
//参数说明
    --name=“容器新名字”:为容器指定一个名称
    -d: 后台运行容器,并返回容器ID,即启动守护式容器
    -i: 以交互模式运行容器,通常与-t同时使用
    -t: 为容器重新分配一个伪输入终端,通常与-i同时使用

//列出当前所有正在运行的容器
docker ps -a
//参数说明:
    -a : 列出当前所有正在运行的容器+历史上运行过的容器
    -l : 显示最近创建的容器
    -n : 显示最近n个创建的容器
    -q : 静默模式,只显示容器编号
    --no-trunc : 不截断输出

//退出容器
//两种退出方式:1.exit :容器停止退出
             2.ctrl+P+Q : 容器不停止退出

//启动容器
docker start 容器ID/容器名

//重启容器
docker restart 容器ID/容器名

//停止容器
docker stop 容器ID/容器名 

//强制停止容器
docker kill 容器ID/容器名

//删除已停止的容器
docker rm 容器ID/容器名
    //一次性删除多个容器
    docker rm -f $(docker ps -qa)  //删除所有的容器
    docker ps -a -q | xargs docker rm

启动守护式容器

//新建并启动容器但是不进入容器
docker run -d 容器ID/容器名
//使用此方式创建容器,在使用 docker ps -a 命令后发现,容器已经退出,docker容器后台运行,就必须要有一个前台进程,容器运行的命令如果不是那些一直挂起的命令(如 top,tail),就是自动退出的。最好的解决方案就是,将要运行的程序以前台进程的形式运行

//查看容器日志
docker logs -f -t --tail 容器ID
//参数说明
    -t : 指加入的时间戳
    -f : 跟随最新的日志打印
    --tail : 数字显示最后多少条

//查看容器内运行的进程
docker top 容器ID

//查看容器内部细节
docker inspect 容器ID

//进入正在运行的容器并以命令行进行交互
docker exec -it 容器ID bashShell
//重新进入: 
docker attach 容器ID
//上述两者的比较:
    exec  是在容器中打开新的终端,并且可以启动新的进程
    attach  直接进入容器启动命令的终端,不会启动新的进程
//例如:
docker exec -t 2e8c2977d0f0 ls -l /tmp   
//进入 2e8c2977d0f0 这个容器中执行 ls -l /tmp 命令后直接退出,返回宿主机。

docker attach 2e8c2977d0f0   
//进入容器ID为 2e8c2977d0f0 的容器中

docker exec -t 2e8c2977d0f0 /bin/bash
//进入容器ID为 2e8c2977d0f0 的容器中

//从容器内拷贝文件到主机上
docker cp 容器ID:容器内路径 目的主机路径
//例如:
docker cp 2e8c2977d0f0:/tmp/ks-script-0n44nrd1 /root
//将2e8c2977d0f0这个容器中的 tmp 目录下的 ks-script-0n44nrd1 文件移动到宿主机的 root 目录下

猜你喜欢

转载自www.cnblogs.com/gujun1998/p/11952796.html