docker 常用命令

帮助命令
  1. docker version
  2. docker info
  3. docker --help
镜像命令
  1. docker images --->本地主机上的所有镜像
    options
    -a :所有镜像
    -q:只显示镜像ID(短镜像ID)
    --digests :显示镜像的摘要信息
    --no-trunc:显示完整的镜像信息(长镜像ID)

2.docker search [options] 镜像名 ---> 命令行查找镜像信息
docker 仓库查找镜像信息
OPTIONS
--no-trunc:显示完整的镜像信息
-s 300 : 收藏数不少于300
--automated

3.docker pull 镜像名[:tag] ---> 下载镜像

  1. docker rmi -f 镜像ID ---> 删除1个
    docker rmi -f 镜像名1:tag 镜像名2:tag --->删除多个
    docker rmi -f $(docker images -qa) -----> 删除所有镜像
容器命令
  1. docker runn [OPTIONS] 镜像名
    OPTIONS说明(常用):有些是一个减号,有些是两个减号
    --name="容器新名字": 为容器指定一个名称;
    -d: 后台运行容器,并返回容器ID,也即启动守护式容器;


    -P: 随机端口映射;
    -p: 指定端口映射,有以下四种格式
    ip:hostPort:containerPort
    ip::containerPort

    containerPort
image.png

使用镜像centos:latest以交互模式启动一个容器,在容器内执行/bin/bash命令。
docker run -it centos /bin/bash

2、docker ps [options]-->当前的容器
OPTIONS说明(常用):
-a :列出当前所有容器+
-l :显示最近创建的容器。
-n:显示最近n个创建的容器。

--no-trunc :不截断输出。

3.exit ---> 停止容器退出,ctrl+p+q 不停止容器退出

4.docker start 容器ID/容器名 --->启动容器
docker restart 容器ID/容器名 --->重启容器
docker stop 容器ID/容器名 --->停止容器
docker rm 容器ID --->删除已停止的容器
一次性删除多个容器
docker rm -f $(docker ps -a -q)
docker ps -a -q | xargs docker rm

5.

  • docker run -d 容器名

使用镜像centos:latest以后台模式启动一个容器
docker run -d centos
问题:然后docker ps -a 进行查看, 会发现容器已经退出
很重要的要说明的一点: Docker容器后台运行,就必须有一个前台进程.
容器运行的命令如果不是那些一直挂起的命令(比如运行top,tail),就是会自动退出的。
这个是docker的机制问题,比如你的web容器,我们以nginx为例,正常情况下,我们配置启动服务只需要启动响应的service即可。例如
service nginx start

但是,这样做,nginx为后台进程模式运行,就导致docker前台没有运行的应用,
这样的容器后台启动后,会立即自杀因为他觉得他没事可做了.
所以,最佳的解决方案是,将你要运行的程序以前台进程的形式运行

  • docker logs -f -t --tail 容器ID
    -t 加入时间戳
    -f 跟随最新的日志打印
    --tail 显示最后条数
    例:docker run -d centos /bin/sh -c "while true;do echo hello zzyy;sleep 2;done"


    深度截图_选择区域_20191011075347.png
  • docker top 容器ID---> 容器内运行的进程

  • docker inspect 容器ID--->查看容器内部细节

  • docker exec -it 容器ID /bin/bash -->进入正在运行的容器并以命令行交互(打开新终端,启动新的进程)
    docker attach 容器ID-->进入正在运行的容器并以命令行交互(进入容器启动的终端,不会启动新的进程)

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


    image.png
  • docker commit -m'描述'-a'作者' 容器ID 镜像名:[镜像标签]

你可能感兴趣的:(docker 常用命令)