根据Docker视频教程,自己总结的相关技术要点摘要
帮助启动类命令
启动Docker
systemctl start docker
停止Docker
systemctl stop docker
重启Docker
systemctl restart docker
查看Docker状态
systemctl status docker
开机自启动Docker
systemctl enable docker
取消开机自启动Docker
systemctl disable docker
查看Docker概要信息
docker info
查看Docker总体帮助文档
docker --help
查看Docker具体命令帮助文档
docker 具体命令 --help
镜像命令
列出本地主机上的镜像
docker images [OPTIONS]
OPTIONS参数:
-a
展示所有信息
-q
只展示IMAGE ID列信息
参数 | 说明 |
---|---|
REPOSITORY | 仓库的镜像源 |
TAG | 镜像的标签版本号 |
IMAGE ID | 镜像的ID |
CREATED | 镜像的创建时间 |
SIZE | 镜像的大小 |
查看镜像/容器/数据卷所占的空间
docker system df
搜索仓库镜像
docker search [OPTIONS] 某个XXX镜像名字
OPTIONS参数:
--limit
只列出N个镜像,默认25个
例如:docker search --limit 5 redis
表示列出5个redis镜像
参数 | 说明 |
---|---|
NAME | 镜像名称 |
DESCRIPTION | 镜像说明 |
STARS | 点赞数量 |
OFFICIAL | 是否是官方的 |
AUTOMATED | 是否是自动构建的 |
拉取镜像到本地
docker pull 某个XXX镜像名字[:TAG]
拉取指定TAG版本的镜像;如果不指定默认拉取[:latest]最新版本的镜像
删除镜像【注:在做删除操作时,请再三确认,以防删错】
根据镜像ID删除
docker rmi [OPTIONS] 镜像ID
同时删除多个
docker rmi [OPTIONS] 镜像名1:TAG 镜像名2:TAG
删除全部
docker rmi [OPTIONS] $(docker images -aq)
OPTIONS参数:
-f
强制删除;比如镜像正在运行中的是无法正常删除的,需要使用强制删除
容器命令
新建/启动容器
docker run [OPTIONS] 镜像ID/镜像名
OPTIONS参数:有些是1个
-
,有些是2个--
--name="容器新名字"
为容器指定一个名称
-d
后台运行容器并返回容器ID,也即启动守护式容器(后台运行)
-i
以交互模式运行容器,通常与-t
同时使用
-t
为容器重新分配一个伪输入终端,通常与-i
同时使用
it
即启动交互式容器(前台有伪终端,等待交互)
-P
随机端口映射,大写P
-p
制定端口映射,小写p
以交互终端方式运行ubuntu容器
docker run -it ubuntu /bin/bash
语句解释:
-i
交互式操作
-t
终端
ubuntu
镜像名
/bin/bash
放在镜像名后面的是命令,这里我们希望有个交互式Shell终端,因此用的是/bin/bash
,也可以用bash
exit
退出终端
查看正在运行的Docker容器进程
docker ps [OPTIONS]
OPTIONS参数:
-a
列出当前所有正在运行的容器+历史上运行过的
-l
显示最近创建的容器
-n
显示最近n个创建的容器
-q
静默模式,只显示容器编号
退出容器
有如下两种命令可执行退出容器
exit
run进去,exit退出,容器停止
ctrl+p+q
run进去,ctrl+p+q退出,容器不停止
启动已停止运行的容器
docker start 容器ID/容器名
重启容器
docker restart 容器ID/容器名
停止容器
docker stop 容器ID/容器名
强制停止容器
docker kill 容器ID/容器名
删除容器【注:在做删除操作时,请再三确认,以防删错】
docker rm [OPTIONS] 容器ID/容器名
OPTIONS参数:
-f
强制删除;比如镜像正在运行中的是无法正常删除的,需要使用强制删除
强制删除,包括在运行中的容器
docker rm -f 容器ID/容器名
一次性删除多个容器
docker rm -f $(docker ps -a -q)
一次性删除多个容器
docker ps -a -q | xargs docker rm
查看容器日志
docker logs 容器ID
查看容器内运行的进程
docker top 容器ID
查看容器内部细节
docker inspect 容器ID
重新进入正在运行的容器,并以命令行交互
用exec
方式进入
docker exec -it 容器ID [bashShell]
用attach
方式进入
docker attach 容器ID
以上2条命令的区别
exec是在容器中打开新的终端,并且可以启动新的进程;用exit退出,不会导致容器的停止【推荐使用】
attach直接进入容器启动命令的终端,不会启动新的进程;用exit退出,会导致容器的停止
容器内拷贝文件到宿主机上
docker cp 容器ID:容器内路径 宿主机路径
导出容器
docker export 容器ID > 文件名.tar
export 导出容器的内容留作为一个tar归档文件;默认导出当前路径下,也可以导出指定路径
导入容器
cat 文件名.tar | docker import -镜像包名/镜像名[:TAG]
提交容器/生成新的镜像
提交容器副本使之成为一个新的镜像
需要在容器外执行该命令,默认生成到当前目录
docker commit [OPTIONS] 容器ID [REPOSITORY][:TAG]
docker commit -m="提交的描述信息" -a="作者" 容器ID 要创建的目标镜像名:[标签名]
谢谢观看,如果对您有帮助的话,麻烦点个赞鼓励下,谢谢!