目录
一、帮助命令
二、镜像命令
镜像仓库
本地镜像管理
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
镜像仓库
- login
- pull
- push
- search
本地镜像管理
- images
- rmi
- tag
- build
- history
- save
- load
- import
查看所有本地的主机上的镜像
docker images [OPTIONS] [REPOSITORY[:TAG]]
docker images -a 所有镜像
docker iamges -q 所有镜像ID docker images -aq
docker images --digests 显示摘要信息
docker images --digests -- no-trunc 显示完整的摘要信息
docker search [OPTIONS] TERM
docker search 镜像名
docker search -s 30 nginx 显示stars超过30的信息
docker search -s 30 --no-trunc nginx 显示完整的摘要信息
docker pull [OPTIONS] NAME[:TAG|@DIGEST]
docker pull 镜像名[:tag]
docker pull xxx
不加tag默认就是latest最新的版本,否则取指定版本
例如:docker pull apache/skywalking-oap-server:8.7.0-es7
docker rmi [OPTIONS] IMAGE [IMAGE...]
docker rmi -f 镜像ID
docker rmi -f hello-world nginx 删除多个
docker rmi -f $(docker images -qa)删除全部
容器生命周期管理
- run
- start/stop/restart
- kill
- rm
- pause/unpause
- create
- exec
容器操作
- ps
- inspect
- top
- attach
- events
- logs
- wait
- export
- port
容器rootfs命令
- commit
- cp
- diff
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,容器启动后,发现自己没有提供服务,就会立刻停止,就是没有程序了。
docker start 容器ID #启动容器
docker restart 容器ID #重启容器
docker stop 容器ID #停止当前运行容器
docker kill 容器ID #强制停止当前容器
docker ps [OPTIONS]
OPTIONS说明:
- 显示当前运行的容器
- -a :显示当前运行的容器+带出历史运行过的容器。
- -f :根据条件过滤显示的内容。
- --format :指定返回值的模板文件。
- -l :显示最近创建的容器。
- -n :列出最近创建的x个容器(-n=x)。
- --no-trunc :不截断输出。
- -q :静默模式,只显示容器编号。
- -s :显示总的文件大小。
列出所有正在运行的容器信息:
输出详情介绍:
CONTAINER ID: 容器 ID。
IMAGE: 使用的镜像。
COMMAND: 启动容器时运行的命令。
CREATED: 容器的创建时间。
STATUS: 容器状态。
状态有7种:
- created(已创建)
- restarting(重启中)
- running(运行中)
- removing(迁移中)
- paused(暂停)
- exited(停止)
- dead(死亡)
PORTS: 容器的端口信息和使用的连接类型(tcpߜxff09;。
NAMES: 自动分配的容器名称。
docker rm [OPTIONS] CONTAINER [CONTAINER...]
OPTIONS说明:
-f, --force :通过 SIGKILL 信号强制删除一个运行中的容器
-l, --link :移除容器间的网络连接,而非容器本身
-v, --volumes :删除与容器关联的卷
docker logs [OPTIONS] CONTAINER
OPTIONS说明:
- -f,--follow :跟踪实时日志
- --details :显示更多的信息
- --since :显示某个timestamp时间之后的日志,或相对时间,如42m(即42分钟)
- --until :显示某个timestamp时间之前的日志,或相对时间,如42m(即42分钟)
- --tail :从日志末尾显示多少行日志, 默认是all
- -t,--timestamps :显示时间戳
案例:
(1)显示实时log
(2)使用 tail 查看 log 尾部(显示最后20行的内容)
(3)查看某时间段日志
(4)查看最近30分钟的日志
(5)使用 grep 过滤 log(例如查找所有包含 “error” 的log)
docker top CONTAINER [ps OPTIONS]
docker inspect [OPTIONS] NAME|ID [NAME|ID...]
OPTIONS说明:
- -f :指定返回值的模板文件。
- -s :显示总的文件大小。
- --type :为指定类型返回JSON。
版权声明:
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若内容造成侵权、违法违规、事实不符,请将相关资料发送至xkadmin@xkablog.com进行投诉反馈,一经查实,立即处理!
转载请注明出处,原文链接:https://www.xkablog.com/do-docker-k8s/33904.html