文章目录
帮助命令
查看docker版本信息
命令:docker version
查看docker运行信息
命令:docker info
帮助命令
含义: docker [Command] --help (如果不写命令,查询出所有命令信息)
镜像命令
镜像列表
命令:docker images [OPTIONS] [REPOSITORY[:TAG]]
- REPOSITORY:表示镜像的仓库源
- TAG:标签(版本)
- IMAGE ID:镜像ID
- CREATED:镜像创建时间
- SIZE:镜像大小
OPTIONS:(可以使用docker --help images查看详细内容)
- -a:显示所有镜像(docker默认隐藏中间镜像)
- -q:只显示镜像id
- --digests :显示摘要信息
- --no-trunc:不要截断输出
查询镜像
命令:docker search [OPTIONS] TERM
- NAME:镜像名称
- DESCRIPTION:镜像描述
- STARS:星
- OFFICIAL:官方版
- AUTOMATED:自动构建的
常用的过滤命令:
docker search -s 30 mysql 可以查询starts 30以上的镜像
拉取镜像
命令:docker pull [OPTIONS] NAME[:TAG|@DIGEST] (不写版本号默认是最新的版本:latest)
OPTIONS:
- -a:下载存储库中所有标记的图像
- -q:不在控制台输出下载信息
- --disable-content-trust 跳过图像验证(默认为true)
删除镜像
含义:docker rmi [OPTIONS] IMAGE [IMAGE…]
OPTIONS:
- -f:强制删除
扩展:
- 删除多个
docker rmi -f 镜像1 镜像2 … - 删除全部
docker rmi -f $(docker images -qa)
docker images -qa 表示查询所有镜像id,将查询的id返回给rmi命令
容器命令
新建并启动容器
命令:docker run [OPTIONS] IMAGE [COMMAND] [ARG…]
OPTIONS(常用):
- -d:启动守护式容器(后台运行,并返回容器id)
- -i:启动交护式容器(通常与-t同时使用)
- -t:为docker分配一个伪终端工具操作容器(tty终端,通常与-i同时使用)
- --name:指定容器名称(唯一)
注意:docker创建守护式容器时要注意,docker有个机制,当docker容器后台运行时,必须有一个前台进行与它交互,否则,docker后台进程会自动回收
如上图所示,启动后台进程容器后,查看容器,却并没有,我们可以使用shell脚本,保持进程与前台仅从交互,如下图所示,这样就可以保持容器在后台进行
查看服务
- 查看已启动的服务
systemctl list-units --type=service - 已设置了开机自启动的服务
systemctl list-unit-files | grep enable
设置服务
- 设置开机启动
systemctl enable docker.service - 移除开机启动
systemctl disable docker.service
设置容器启动
新容器
启动时添加–restart=always参数
--restart的参数有
Flag Description
no 不自动重启容器. (默认value)
on-failure 容器发生error而退出(容器退出状态不为0)重启容器
unless-stopped 在容器已经stop掉或Docker stoped/restarted的时候才重启容器
always 在容器已经stop掉或Docker stoped/restarted的时候才重启容器
已经启动的容器
docker update --restart=always 容器id或容器名
容器列表
命令: docker ps [OPTIONS]
OPTIONS(常用):
- -a:列出当前所有正在运行的容器+历史上运行的容器
- -l:显示最近创建的容器
- -n num:显示最近n个创建的容器
- -q:静默模式,只返回容器id
- --no-trunc:不截断输出
退出容器
退出并停止容器
命令:exit
退出不停止容器
命令:Ctrl+P+Q
启动容器
命令:docker start [OPTIONS] CONTAINER [CONTAINER…]
Options:
- -i:启动并进入容器
重启容器
docker restart [OPTIONS] CONTAINER [CONTAINER…]
停止容器
停止容器
命令:docker stop [OPTIONS] CONTAINER [CONTAINER…]
Options:
- -t num:num秒之后停止容器(默认10)
强制停止
命令:docker kill [OPTIONS] CONTAINER [CONTAINER…]
删除容器
命令:docker rm [OPTIONS] CONTAINER [CONTAINER…]
Options:
-
-f:强制移除正在运行的容器
-
-l:删除指定的链接
-
-v:删除与容器关联的匿名卷
删除所有容器 docker rm -f $(docker ps -qa) 或者 docker ps -qa | xages docker rm
上面新建命令我们可以知道,如果我们想创建一个守护式容器,可以使用命令:
$ docker run -d image
查看容器日志
命令:docker logs [OPTIONS] CONTAINER
Options:
- -t:显示时间
- -f:跟踪日志输出(动态显示)
- --details :显示提供给日志的额外细节
- --tail num:从日志末尾显示的行数
查看容器内运行情况
命令: docker top CONTAINER [ps OPTIONS]
查看容器内部细节
命令:docker inspect [OPTIONS] NAME|ID [NAME|ID…]
以Json串的形式返回容器内部细节
进入正在运行的容器进行交互
命令:docker attach [OPTIONS] CONTAINER
命令:docker exec [OPTIONS] CONTAINER COMMAND [ARG…]
区别:attach 直接进入容器
exec -it CONTAINER /bin/bash
可以直接进入容器,相当于attach
exec也可以不进入容器而只执行命令,相当于在容器内执行命令并将命令返回到宿主机
从容器内拷贝文件到宿主机
docker cp [OPTIONS] CONTAINER:文件路径 目标路径