Docker(二)常用命令

目录

一、帮助命令

二、镜像命令

镜像仓库

本地镜像管理

1、images(查看本地镜像)

2、search(搜索docker的镜像)

3、pull(拉取镜像到本地)

4、rmi(删除本地镜像)

三、容器命令

容器生命周期管理

容器操作

容器rootfs命令

1、run(在新容器中运行命令)

2、启动和停止容器操作

3、ps(查看运行的容器)

4、rm(删除容器)

5、logs(查看日志)

6、top(查看容器中进程信息)

7、inspect(获取容器/镜像的元数据)


一、帮助命令

docker version

docker info

docker 命令 --help

帮助文档的地址:Reference documentation | Docker Documentation

二、镜像命令

镜像仓库

本地镜像管理

1、images(查看本地镜像)

查看所有本地的主机上的镜像

docker images [OPTIONS] [REPOSITORY[:TAG]] 

docker images -a 所有镜像

docker iamges -q 所有镜像ID docker images -aq

docker images --digests 显示摘要信息

docker images --digests -- no-trunc 显示完整的摘要信息

2、search(搜索docker的镜像)

docker search [OPTIONS] TERM

docker search 镜像名

docker search -s 30 nginx 显示stars超过30的信息

docker search -s 30 --no-trunc nginx 显示完整的摘要信息

3、pull(拉取镜像到本地)

docker pull [OPTIONS] NAME[:TAG|@DIGEST]

docker pull 镜像名[:tag]

docker pull xxx

不加tag默认就是latest最新的版本,否则取指定版本

例如:docker pull apache/skywalking-oap-server:8.7.0-es7

4、rmi(删除本地镜像)

docker rmi [OPTIONS] IMAGE [IMAGE...]

docker rmi -f 镜像ID

docker rmi -f hello-world nginx 删除多个

docker rmi -f $(docker images -qa)删除全部

三、容器命令

容器生命周期管理

容器操作

容器rootfs命令

1、run(在新容器中运行命令)

docker run [OPTIONS] IMAGE [COMMAND] [ARG...]

OPTIONS说明:

  • -a stdin: 指定标准输入输出内容类型,可选 STDIN/STDOUT/STDERR 三项;

  • -d: 后台运行容器,并返回容器ID;

  • -i: 以交互模式运行容器,通常与 -t 同时使用;

  • -P: 随机端口映射,容器内部端口随机映射到主机的端口

  • -p: 指定端口映射,格式为:主机(宿主)端口:容器端口

  • -t: 为容器重新分配一个伪输入终端,通常与 -i 同时使用;

  • --name="xxx": 为容器指定一个名称;

  • --dns 8.8.8.8: 指定容器使用的DNS服务器,默认和宿主一致;

  • --dns-search example.com: 指定容器DNS搜索域名,默认和宿主一致;

  • -h "mars": 指定容器的hostname;

  • -e username="ritchie": 设置环境变量;

  • --env-file=[]: 从指定文件读入环境变量;

  • --cpuset="0-2" or --cpuset="0,1,2": 绑定容器到指定CPU运行;

  • -m :设置容器使用内存最大值;

  • --net="bridge": 指定容器的网络连接类型,支持 bridge/host/none/container: 四种类型;

  • --link=[]: 添加链接到另一个容器;

  • --expose=[]: 开放一个端口或一组端口;

  • --volume , -v: 绑定一个卷

案例:docker run -d 镜像名 

docker run -d centos

问题:执行docker ps命令,发现centos 停止了

# 常见的坑,docker 容器使用后台运行,就必须要有一个前台进程,docker发现没有应用,就会自动停止

# nginx,容器启动后,发现自己没有提供服务,就会立刻停止,就是没有程序了。

2、启动和停止容器操作

docker start 容器ID          #启动容器

docker restart 容器ID       #重启容器

docker stop 容器ID          #停止当前运行容器

docker kill 容器ID             #强制停止当前容器

3、ps(查看运行的容器)

docker ps [OPTIONS]

OPTIONS说明:

  • 显示当前运行的容器
  • -a :显示当前运行的容器+带出历史运行过的容器。
  • -f :根据条件过滤显示的内容。
  • --format :指定返回值的模板文件。
  • -l :显示最近创建的容器。
  • -n :列出最近创建的x个容器(-n=x)。
  • --no-trunc :不截断输出。
  • -q :静默模式,只显示容器编号。
  • -s :显示总的文件大小。

列出所有在运行的容器信息:

docker ps

输出详情介绍:

CONTAINER ID: 容器 ID。

IMAGE: 使用的镜像。

COMMAND: 启动容器时运行的命令。

CREATED: 容器的创建时间。

STATUS: 容器状态。

状态有7种:

  • created(已创建)
  • restarting(重启中)
  • running(运行中)
  • removing(迁移中)
  • paused(暂停)
  • exited(停止)
  • dead(死亡)

PORTS: 容器的端口信息和使用的连接类型(tcp\udp)。

NAMES: 自动分配的容器名称。

4、rm(删除容器)

docker rm [OPTIONS] CONTAINER [CONTAINER...]

OPTIONS说明:
  -f, --force     Force the removal of a running container (uses SIGKILL)
  -l, --link      Remove the specified link
  -v, --volumes   Remove anonymous volumes associated with the container

5、logs(查看日志)

docker logs [OPTIONS] CONTAINER

OPTIONS说明:

  • -f,--follow 跟踪实时日志

  • --details :显示更多的信息

  • --since :显示某个timestamp时间之后的日志,或相对时间,如42m(即42分钟)

  • --until :显示某个timestamp时间之前的日志,或相对时间,如42m(即42分钟)

  • --tail :从日志末尾显示多少行日志, 默认是all

  • -t,--timestamps :显示时间戳

案例:

(1)显示实时log

docker logs -f <CONTAINER_ID>

(2)使用 tail 查看 log 尾部(显示最后20行的内容)

docker logs --tail 20 <CONTAINER_ID>

(3)查看某时间段日志

docker logs -t --since="2018-02-08T13:23:37" --until "2018-02-09T12:23:37" <CONTAINER_ID>

(4)查看最近30分钟的日志

docker logs --since 30m <CONTAINER_ID>

(5)使用 grep 过滤 log(例如查找所有包含 “error” 的log)

docker logs <CONTAINER_ID> | grep error

6、top(查看容器中进程信息)

 docker top CONTAINER [ps OPTIONS]

7、inspect(获取容器/镜像的元数据)

docker inspect [OPTIONS] NAME|ID [NAME|ID...]

OPTIONS说明:

  • -f :指定返回值的模板文件。

  • -s :显示总的文件大小。

  • --type :为指定类型返回JSON。

  • 0
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值