1、启动类命令
systemctl start docker #启动docker
systemctl stop docker #停止docker
systemctl restart docker #重启docker
systemctl status docker #查看docker状态
systemctl enable docker #开机自启docker
2、帮助类命令
docker info #查看docker概要信息
docker --help #查看docker总体帮助
docker 命令 --help #查看docker命令帮助
3、镜像命令
1、列出镜像
docker images #列出本地上的镜像
选项:
-a:列出本地所有的镜像(含历史映像层)
-q:只显示镜像ID
2、从Docker Dub查找镜像
docker search 某个镜像的名字
格式:docker search [opions] 镜像名字
opions:
--inmit:只列出n个镜像,默认是25个
NAME | 镜像名称 |
DESCRIPTION | 镜像说明 |
STARS | 点赞数量 |
OFFICIAL | 是否是官方的 |
AUTOMATED | 是否是自动构建的 |
4、下载镜像
docker pull 镜像名
格式:docker pull 镜像名:TAG
注:不加TAG(版本)就等同于latest(最新的)
5、查看镜像、容器、数据卷所占的空间
docker system df
TYEP | 类型 |
TOTAL | 总 |
ACTIVE | 活跃的 |
SIZE | 大小 |
PECLATMADLE | 未使用图像消耗的空间 |
6、删除镜像
docker rmi 镜像名字或Id
docker rmi -f 镜像ID #删除单个镜像
docker rmi -f 镜像名:TAG 镜像名:TAG #删除多个镜像
docker rmi -f $(docker images -qa) #删除全部
4、容器命令
1、创建+启动容器
docker run
格式:docker run [options] image [command] [arg...]
options:
--name:为容器指定一个名字
-i:以交互模式运行容器,通常于-t一起用
-t:为容器分配一个伪终端,通常跟-i一起用
-p:指定端口映射,小写p
-P:随机指定端口映射。大写P
使用一个镜像在前台以交互模式启动一个容器,在容器内执行/bin/bash命令
docker run -it centos /bin/bash
退出终端:exit
2、列出当前所有正在运行的容器
docker ps
格式:docker ps [opitions]
opitions:
-a:列出当前所有正在运行的容器+历史上运行过的
-l:显示最近创建的容器
-n:显示最近n个创建的容器
-q:静默模式,之显示容器编号
3、退出容器
exit #run进去容器,exit退出,容器停止
ctrl+p+q #run进去容器,ctrl+p+q退出,容器不停止
4、启动已经停止运行的容器
docker start 容器ID或者容器名
5、重启容器
docker restart 容器Id或者容器名
6、停止容器
docker stop 容器ID或者容器名
7、强制停止容器
docker kill 容器ID或者容器名
8、删除已经停止的容器
docker rm 容器ID
docker rm -f $(docker pa -a -q) #一次性删除多个容器实例 注:-f强制删除这个少用很危险
5、重要的命令
1、启动守护式容器(后台服务器)
在大部分的场景下,我们希望docker 的服务是在后台的,而我们可以-d指定容器的后台运行模式
docker run -d 容器名
docker容器后台运行就必须有一个前程进程。容器运行的命令如果不是那些一直挂起的命令(比如运行top,tail),就会自动退出。只要将你要运行的程序以前台进程的形式运行,就可以解决这个问题。
实例:
docker run -it redis #前台交互式启动
docker run -d redis #后台守护式启动
2、查看容器的日志
docker logs 容器ID
3、查看容器内运行的进程
docker top 容器ID
4、查看容器内部细节
docker inspect 容器ID
5、进入正在运行的容器并以命令行交互
docker attach 容器ID #重新进入容器
attach 实在容器中打开容器启动命令的终端,不会启动新的进程,用exit退出,会导致容器的停止
docker exec [opitions] 容器Id /bin/bash #重新进入容器
exec 是在容器中打开一个新的终端,并且可以启动新的进程,用exit退出,不会导致容器的停止
6、导入和导出容器
export 导出容器的内容作为一个tar归档文件[对应import命令]
import从tar包中的内容创建一个新的文件系统再导入为镜像[对应export]
docker export 容器ID > 文件名。tar
cat 文件名.tar | docker import -镜像用户:镜像版本号