docker的常用命令
docker的常用命令
启动类命令
命令基于centos7,centos6命令不一样
# 关闭docker服务
systemctl stop docker
# 查看docker状态
systemctl status docker
# 启动docker服务
systemctl start docker
# 重启docker服务
systemctl restart docker
帮助类命令
# 显示doucker的版本信息
docker version
# 显示docker的系统信息,包括镜像和容器的数量
docker info
# 帮助命令
docker 命令 --help
帮助文档的地址:https://docs.docker.com/reference/
镜像命令
# 查看所有本地主机上的镜像
docker images
解释说明:
- REPOSITORY:镜像的仓库源
- TAG:镜像的标签
- IMAGE ID:镜像的id
- CREATED:镜像的创建时间
- SIZE:镜像的大小
可选项:
- -a,--all:列出所有的镜像(含历史镜像)
- -q,--quiet:只显示镜像的id
同一个仓库源可以有多个TAG版本,代表这个仓库源的不同个版本,我们使用REPOSITORY:TAG来定义不同的镜像;如果你不指定一个镜像的版本标签,将默认使用最新镜像
# 搜索镜像
docker search 镜像名
解释说明:
- NAME:镜像名称
- DESCRIPTION:镜像说明
- STARS:收藏数
- OFFICIAL:是否官方认证
- AUTOMATED:是否自动构建的
可选项:通过收藏来过滤显示结果
- --filter=STARS=3000:搜索出来的镜像就是STARS大于3000的
- --limit 10:只列出10个镜像,默认25个
# 下载镜像,不指定TAG默认下载最新版
docker pull 镜像名
# 下载5.7版本的mysql
docker pull mysql:5.7
# 查看镜像/容器/数据卷所占空间
docker system df
# 删除镜像,-f:强制删除
docker rmi 镜像id
# 删除多个镜像
docker rmi 镜像id 镜像id 镜像id
# 删除全部的镜像
docker rmi $(docker images -aq)
容器命令
注意:有了镜像才可以创建容器
# 新建并启动容器
docker run [OPTIONS] IMAGE [COMMAND][ARG...]
# 以交互模式启动并进入容器,在容器内执行/bin/bash获得一个交互式shell
docker run -it centos /bin/bash
OPTION说明:
- --name="容器名字":自定义容器名字
- -d:后台方式运行
- -i:以交互模式运行容器,通常与 -t 同时使用
- -t:为容器重新分配一个伪输入终端,通常与 -i 同时使用,
- -it:启动交互式容器(前台有伪终端,等待交互)
- -p:指定容器的端口,小写p
- -P:随机端口映射,大写P
# 在交互模式中执行退出并停止容器
exit
# 在交互模式中执行退出但不停止容器
ctrl+q+p
# 列出当前正在运行的容器
docker ps
# 列出当前正在运行的容器+历史运行过的容器
docker ps -a
# 显示最近创建的n个容器
docker ps -n=?
# 只显示容器的编号
docker ps -q
# 删除指定的容器,不能删除正在运行的容器(-f 强制删除)
docker rm 容器id
# 强制删除所有的容器
docker rm -f $(docker ps -aq)
# 启动已经停止的容器
docker start 容器id或容器名
# 重启容器
docker restart 容器id或容器名
# 停止当前正在运行的容器
docker stop 容器id或容器名
# 强制停止当前容器
docker kill 容器id或容器名
# 后台启动容器(部分容器不支持)
docker run -d 镜像名
注意:如果以后台方式启动容器后,运行docker ps命令查看当前正在运行的容器发现刚才启动的容器停止了,说明该容器不支持后台启动,原因:容器使用后台运行,就必须要有一个前台进程,docker发现没有应用,就会自动停止
# 显示容器日志
docker logs 容器id
# 显示全部日志
docker logs -ft 容器id
# 显示10条日志
docker logs -ft --tail 10 容器id
# 查看容器中的进程信息
docker top 容器id
# 查看容器的元数据
docker inspect 容器id
# 以交互模式进入容器,会打开新的终端,并启动新的进程,用exit退出不会导致容器停止
docker exec -it 容器id /bin/bash
# 进入容器正在执行的终端,不会启动新的进程,用exit退出会导致容器停止
docker attach 容器id
# 从容器内拷贝文件到主机上
docker cp 容器id:容器内路径 目标路径
# 导出容器的内容为tar
docker export 容器id>文件名.tar
# 将tar包中的内容解压为镜像
cat 文件名.tar | docker import - 镜像用户/镜像名:镜像版本号
# 提交容器副本使之成为一个新的镜像
docker commit -m="提交的描述信息" -a="作者" 容器ID 要创建的目标镜像名:[标签名]
记得快乐
浙公网安备 33010602011771号