docker常用命令
生命周期管理
1. run 创建一个新容器并运行命令
语法
1 | docker run [OPTIONS] IMAGE [COMMAND] [ARG...] |
说明
- -p 指定端口映射,格式:宿主机端口:容器端口
- -P 随机端口映射
- -d 后台运行
--name
自定义容器的名字- -v 绑定一个卷
docker create创建一个容器但是不启动,其他用法同run
实例
1 | docker run |
2、start/restart/stop启停容器
语法
1 | docker start CONTAINER |
实例
1 | docker restart es #重启名为es的容器 |
3、kill 杀掉进程
语法
1 | docker kill [OPTIONS] CONTAINER |
实例
1 | docker kill -s KILL es #向容器中的es发送KILL命令(即杀掉容器) |
4、rm 删除一个或多个容器
语法
1 | docker rm [OPTIONS] CONTAINER [CONTAINER...] |
实例
1 | docker rm -f es es01 #强制删除容器es、es01 |
容器操作
1、ps 列出容器
语法
1 | docker ps [OPTIONS] |
说明
- -a 显示所有的容器包括未运行的
- -f 根据条件过滤
- -n 列出最近创建的n个容器
- -q 只显示容器编号
实例
1 | docker ps -n 5 #最近创建的5个容器 |
1 | CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES |
- CONTAINER ID 容器ID
- IMAGE 使用的镜像ID
- COMMAND 启动容器时运行的命令
- CREATED 容器的创建时间
- STATUS 容器状态:created已创建、restarting重启中、running运行中、removing迁移中、paused暂停、exited停止、dead死亡
- PORTS 容器的端口信息和使用的连接类型TCP/UDP
- NAMES 容器名称,没有指定时自动分配
2、top 查看容器中运行的进程信息,支持ps命令参数
1 | docker top mysql #查看容器中名为mysql进程的信息 |
3、logs 获取容器日志
语法
1 | docker logs [OPTIONS] CONTAINER |
说明
- -f 跟踪日志输出
- –since 某个时间之后的日志
- -t 显示时间戳
- –tail 最新的N条容器日志
实例1
2docker logs -f es #跟踪查看容器es的日志输出
docker logs --since 2022-02-02 --tail 10 es #2022-02-02之后的最新10条日志
镜像仓库
1、pull 从仓库更新/拉取指定镜像
语法
1 | docker pull [OPTIONS] NAME[:TAG|@DIGEST] |
实例
1 | docker pull tomcat:latest #拉取tomcat的最后一个版本镜像 |
2、search 从docker Hub中搜索镜像
语法
1 | docker search [OPTIONS] TERM |
实例
1 | docker search -f stars=10 java #搜索名包含Java且stars大于10的镜像 |
本地镜像管理
1 | docker images #查看本地镜像列表,说明如下 |
1 | REPOSITORY TAG IMAGE ID CREATED SIZE |