一:常用镜像命令
1.docker images 镜像列表 (-a all; -p 仅仅查询镜像id)
2.docker pull 拉取镜像
3.docker search 查询
4.docker system df 查询镜像,容器的内存、数据卷等
5.docker rmi 删除
6.docker save -o 新镜像名称.tar 源镜像:tag : 将指定镜像保存成 tar 归档文件,如:
docker save -o my_ubuntu_v3.tar runoob/ubuntu:v3
7.docker load -i 导出的镜像.tar : 导入使用 docker save 命令导出的镜像,如:
docker load < my_ubuntu_v3.tar (< 等同于 -i/--input)
8.docker image prune:删除虚悬镜像
docker image ls -f dangling=true 查看全部虚悬镜像
二:常用容器命令
1.docker run --name=xxx -it ubuntu /bin/bash 启动容器
1.1 --name 别名
1.2-i 以交互模式运行容器; -t 为容器提供一个伪输入终端; /bin/bash 提供shell交互命令的接口
1.3-d 后台运行容器并返回容器ID,即启动守护式容器(后台运行)
1.4-p 8080:8080 指定端口映射(对外:容器内)-P 随机端口映射
1.5在容器中,exit 退出,容器停止;ctrl+p+q 退出,容器不停止
2.docker ps 罗列所有运行的容器
3.docker start/stop/restart/kill 容器id或名称 开启、停止、重启、强制停止容器
4.docker rm 删除已停止的容器 -f 强制删除
###重要###
5.启动守护式容器(机制-->docker容器后台运行,就必须有一个前台进程)
- docker run -it redis:6.0.8 前台交互式启动
- docker run -d redis:6.0.8 后台守护式启动
6.docker logs 容器id:查看容器日志
7.docker top 容器id:查看容器内运行的进程
8.docker inspect:查看容器内部细节
9.进入正在运行的容器并以命令行交互
- docker exec -it 容器id /bin/bash: 在容器启动新的终端,并启动新的进程,exit退出不会导致容器停止(推荐使用)
- docker attach 容器id:直接进入容器启动命令的终端,不会启动新的进程,exit退出会导致容器停止
10.docker cp 容器id:容器内路径 目的主机路径:从容器内拷贝文件到主机
11.导入和导出容器
- docker export 容器id > 文件路径.tar:导出
- cat 文件路径.tar | docker import - 镜像用户/镜像名:镜像版本号
12.数据卷:将docker容器内的数据保存进宿主机的磁盘中。
- docker run -it --privileged=true -v /宿主机绝对路径目录:/容器内目录 镜像名
- docker inspect 容器id:根据mounts节点,查看挂载目录
- 特点:
- 数据卷可在容器间共享或者重用数据
- 数据卷中的更改可以直接实时生效
- 数据卷中的更改不会包含在镜像的更新中
- 数据卷的生命周期一直持续到没有容器使用它为止