systemctl start docker
systemctl stop docker
systemctl restart docker
systemctl status docker
systemctl enable docker
docker info
docker --help
docker 具体命令 --help
同一个仓库源可以多个TAG版本,代表这个仓库源的不同的版本,使用REPOSITORY:TAG来定义不同的镜像,如果不指定一个镜像的版本标签,docker将默认使用最新的latest镜像
docker images
options:
-a:列出本地所有镜像(含历史镜像)
-q:只显示镜像id
docker search [options] imagesname
options:
docker search --limit 5 redis 只列出前5个
docker pull imagesname[:TAG]
such: docker pull redis:6.0.8
such: docker pull imagesname 默认拉最新版
docker system df
docker rmi imagesId
docker rmi -f imagesId 删除单个
docker rmi -f imagesname1:TAG imagesname2:TAG 删除多个
docker rmi -f $(docker images -qa) 删除全部
有镜像才能创建容器,这是根本前提
docker run [options] image [command][arg..] 启动交互式容器(前台命令行)
options说明
--name=“容器新名字” 为容器指定一个名字
-d:后台运行容器并返回容器ID,也即启动守护式容器(后台运行)
-i:以交互模式运行容器,通常与-t同时使用
-t:为容器重新分配一个伪终端,通常与-i同时使用
docker run -it image:镜像启动之后有进一步的命令请求,需要你返回一个终端让我进一步进行操作
-P:随机端口映射
-p:指定端口映射
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 容器ID或者容器名
docker rm -f 容器ID或者容器名 //强制删除(无需停止)
大部分场景下,我们希望docker的服务是在后台运行的,我们可以通过-d指定容器的后台运行模式
docker run -d 容器名
注意事项:
使用docker run -d centos后,容器启动成功后会退出
docker机制:docker容器后台运行,就必须有一个前台进程,容器运行的命令如果不是一直挂起的命令(top…),就会自动退出
docker logs [OPTIONS] 容器id/容器名称
-details :显示提供给日志的其他详细信息
-f --follow :查看实施日志
--tail :仅列出最新N条容器日志
-t,--timestamps :显示时间戳加粗样式
docker logs --tail 50 --follow --timestamps nginx1.23.2
docker top
docker inspect 容器id
docker exec -it 容器ID bashShell
docker attach 容器ID
区别:
attach直接进入容器启动命令的终端,不会启动新的进程,用exit退出会导致容器停止
exec是在容器中打开新的终端,并且可以启动新的进程,用exit退出不会导致容器停止(推荐)
一般用-d后台启动程序,再用exec进入对应容器实例
docker cp 容器ID:容器内路径 目的主机路径
export导出容器的内容留作为一个tar归档文件【对应import命令】
docker export 容器ID > 文件名.tar
import 从tar包中的内容创建一个新的文件系统再导入为镜像【对应export】
cat 文件名.tar|docker import -镜像用户/镜像名:镜像版本号
修改镜像标签
docker commit 容器id 镜像名称:tag
导出镜像的内容留作为一个tar归档文件(tar文件会保存在执行当前命令的目录下)
docker save -o 压缩文件名称 镜像名称:tag
从tar包中的内容创建一个新的文件系统再导入为镜像
docker load -i 压缩文件名称