一、info|version
# docker 系统信息
docker info
# 显示 docker 版本信息
docker version
docker -v
官方参考:docker commandline
二、镜像操作
官方的容器景象仓库:hub.docker
1.拉取hub.docker镜像到本地
docker pull NAME[:TAG]
# example
docker pull nginx
docker pull nginx:1.22.0
2.查看本地已经拉取的镜像
docker images [OPTIONS] [REPOSITORY[:TAG]]
# example
docker images
docker -q images #只显示镜像id
docker images nginx
docker images nginx:1.22.0
3.从hub.docker查找镜像
docker search [OPTIONS] TERM
# example
docker search java
docker search -f stars=10 java
4.删除镜像
docker rmi [OPTIONS] IMAGE [IMAGE...]
-f :强制删除
#example
docker rmi nginx
docker rmi -f nginx
docker rmi `docker images -q` # 删除所有镜像
三、容器生命周期管理
1. 创建一个新容器并运行一个命令
docker run [OPTIONS] IMAGE [COMMAND] [ARG...]
- -d: 后台运行容器,并返回容器ID;
- -i: 以交互模式运行容器,通常与 -t 同时使用;
- -t: 为容器重新分配一个伪输入终端,通常与 -i 同时使用;
- -p: 指定端口映射,格式为:主机(宿主)端口:容器端口
- -e username="ritchie": 设置环境变量;
- --name="nginx-lb": 为容器指定一个名称;
- -volume , -v: 绑定一个卷
docker run -it ubuntu /bin/bash
docker run -i -d ubuntu /bin/bash
docker run --name mynginx -p 80:80 -d nginx
2.查看本级的容器列表
# 查看正在运行的容器
docker ps
# 查看所有的容器(包括已经停止的)
docker ps -a
3.docker start|stop|restart
-
docker start :启动一个或多个已经被停止的容器
-
docker stop :停止一个运行中的容器
-
docker restart :重启容器
#example
docker start mynginx
docker stop mynginx
docker restart mynginx
4.删除一个或多个容器。
docker rm [OPTIONS] CONTAINER [CONTAINER...]
#example
docker rm mynginx
docker rm -f mynginx
5.在运行的容器中执行命令
docker exec [OPTIONS] CONTAINER COMMAND [ARG...]
OPTIONS说明:
- -d : 分离模式: 在后台运行
- -i : 即使没有附加也保持STDIN 打开
- -t : 分配一个伪终端
#example
docker exec -it 7aba /bin/bash
6.获取容器的日志
docker logs [OPTIONS] CONTAINER
OPTIONS说明:
- -f : 跟踪日志输出
- --since : 显示某个开始时间的所有日志
- -t : 显示时间戳
- --tail : 仅列出最新N条容器日志
docker logs -f mynginx
#查看容器mynginx从2016年7月1日后的最新10条日志。
docker logs --since="2016-07-01" --tail=10 mynginx
7. docker inspect 获取容器/镜像的元数据。
docker inspect nginx
8.docker top 查看容器中运行的进程信息
docker top nginx
9.docker port :列出指定的容器的端口映射
docker port nginx