1.帮助启动类命令
1.启动docker
bash
systemctl start docker
2.停止docker
bash
systemctl stop docker
3.重启docker
bash
systemctl restart docker
4.查看dockers状态
bash
systemctl status docker
5.开机自启
bash
systemctl enable docker
6.开机自启同时启动
bash
systemctl enable --now docker
7.查看docker概要信息
bash
docker info
8.查看docker总体帮助文档
bash
docker -help
9.查看docker命令帮助文档
bash
docker 具体命令 --help
2. 镜像命令
1.列出本地主机上的镜像
bash
docker images
1.列出本地所有镜像(含历史映像层)
bash
docker images -a
2.只显示镜像id
bash
docker images -q
2.查询某个镜像在镜像源有哪些版本
bash
docker search 镜像源的名字
返回前五条
bash
docker search - -limit 5 redis
3.拉取镜像
bash
docker pull 镜像名:[tag] 没有 默认就是最新latest
4.查看镜像 / 容器 / 数据卷 所占用的空间
bash
docker system df
5.删除镜像
bash
docker rmi 镜像标识 可以加 -f标识 强制删除
bash
docker rmi - f $(docker images -qa)
6.面试题 :谈谈docker虚悬镜像是什么?
仓库、标签都是<none>的镜像,俗称虚悬镜像 dangling image
长什么样
3.容器命令
这里以ubuntu做示范
bash
docker pull ubuntu
拉取ubuntu镜像
1.新建或启动容器
bash
docker run [OPTIONS] IMAGE [COMMAND] [ARG...]
option 参数
command 命令
arg 参数
i 是交互 t是终端的意思
尝试运行一下Ubuntu
bash
docker run -it ubuntu
但是还没结束,开启了终端命令,你得需要输入命令 啊
所以在后面还得加入参数 在容器内 执行 /bin/bash命令来开启容器内终端供外面使用
两种方式
bash
docker run -it ubuntu bash
bash
docker run -it ubuntu /bin/bash
来运行
他就进入容器内部的终端了
退出就输入 exit
给容器取个名字
bash
docker run -it --name=jmjubuntu ubuntu /bin/bash
2.列出当前所有正在运行的容器
bash
docker ps [OPTIONS]
终于明白了 这些 -i -t 的都是缩写 正常的命令都是 --全称
比如 -i 等效于 --interactive
bash
docker ps -n 1
3.退出容器
1.退出 容器停止
run进去容器 exit退出 容器停止
bash
exit
2.退出容器不停止
run进去容器, ctrl + p + q 退出 容器不停止
使用这个又可以进入容器
bash
docker exec -it 容器id bash
4.删除容器
bash
# 删除指定容器
docker rm 容器id
只能删除不在运行的容器
强制删除
bash
docker rm -f 容器id #强制删除
第二个命令解释一下
把管道符前面执行的结果作为参数传入 xargs 并执行 docker rm 命令
5.进入容器
bash
docker exec -it 容器id bash
6.启动守护式容器 后台服务器
7.redis启动演示case
1.前台交互式启动
bash
docker run -it redis:6.0.8
2.后台守护式启动
bash
docker run -d redis:6.0.8
8.查看容器内运行的进程
bash
docker top 容器id
9.查看容器内部的细节
bash
docker inspect 容器id
10.进入正在运行的容器并以命令行交互
bash
docker exec -it 容器id bash
bash
docker attach 容器id
11.从容器拷贝文件到主机
bash
docker cp 1924db6e1c43:/tmp/a.txt /root
12.导入和导出容器
导出
bash
docker export 1924db6e1c43 >abcd.tar
.tar 或 .gz都可以
导入
bash
cat abcd.tar | docker import - jmj/ubuntu:3.7
导入了成为一个镜像
运行
bash
docker run -it jmj/ubuntu:3.7 /bin/bash
检查是否有a.txt文件
这块知识应该过期了,如果保留容器中得修改记录 就需要用 save load