Docker命令

Eva ·
更新时间:2024-11-13
· 540 次阅读

文章目录1、Docker基本命令2、Docker镜像常用命令(1)docker images 列出本机所有镜像(2)docker search 搜索镜像(3)docker pull 下载镜像(4)docker rmi 删除镜像3、Docker 容器常用命令(1)Docker创建并启动容器(2)Docker进入容器(3)Docker列出容器(4)Docker退出容器(5)Docker启动容器(6)Docker重启容器(7)Docker停止容器(8)Docker删除容器 1、Docker基本命令

启动Docker
systemctl start docker

停止Docker
systemctl stop docker

重启Docker
systemctl restart docker

开机启动Docker
systemctl enable docker

查看Docker概要信息
docker info
在这里插入图片描述
查看Docker帮助文档
docker --help
在这里插入图片描述
查看Docker版本信息
docker version
在这里插入图片描述

2、Docker镜像常用命令 (1)docker images 列出本机所有镜像 docker images

在这里插入图片描述

镜像的属性说明
REPOSITORY 镜像的仓库源
TAG 镜像的标签(版本),同一个仓库有多个TAG的镜像,多个版本;我们用REPOSITORY:TAG来定义不同的镜像
IMAGE ID 镜像ID,镜像的唯一标识
CREATE 镜像的创建时间
SIZE 镜像的大小
OPTIONS 下面是可选参数
-a 显示所有的镜像(包括中间层)
-q 只显示镜像id
-qa 可以组合
-digests 显示镜像的摘要信息
–no-trunc 显示完整的镜像信息
(2)docker search 搜索镜像 docker search 镜像名

在这里插入图片描述
和 在 https://hub.docker.com/ 这里的搜索效果一样;
在这里插入图片描述

OPTIONS可选参数:
–no-trunc 显示完整的镜像描述
-s 列出收藏数不小于指定值的镜像
–automated 只列出Docker Hub自动构建类型的镜像
(3)docker pull 下载镜像 docker pull 镜像名称:TAG

注意:不加TAG,默认下载最新版本latest
在这里插入图片描述

(4)docker rmi 删除镜像 ① 删除单个:docker rmi 镜像名称:TAG 如果不写TAG,默认删除最新版本latest

在这里插入图片描述
如果镜像已经在容器中生成了再运行时候,会报错,删除失败;
在这里插入图片描述

所以我们需要加 -f 强制删除 docker rmi -f 镜像名 还有一种方法就是先从容器中删除,然后再docker rmi 镜像名 删除

在这里插入图片描述

②删除多个镜像:docker rmi -f 镜像名1:TAG 镜像名2:TAG 两个镜像名之间用英文空格隔开

在这里插入图片描述

③删除全部:docker rmi -f $(docker images -qa)

在这里插入图片描述

3、Docker 容器常用命令 (1)Docker创建并启动容器 docker run [OPTIONS] IMAGE [COMMAND] [ARG...]

OPTIONS可选参数:
–name=“容器新名字”:为容器指定一个名称;
-i:以交互模式运行容器,通常与-t或者-d同时使用;
-t:为容器重新分配一个伪输入终端,通常与-i同时使用;
-d: 后台运行容器,并返回容器ID;
-P: 随机端口映射,容器内部端口随机映射到主机的端口
-p: 指定端口映射,格式为:主机(宿主)端口:容器端口

① 启动普通容器: docker run --name 别名 镜像ID 给镜像去一个别名

先查看所有的镜像,然后把hello-world取了一个新的别名hello2
在这里插入图片描述
在这里插入图片描述

②启动交互式容器(启动后进入容器): docker run -it --name 别名 镜像ID 来运行一个容器,取别名,交互模式运行,以及分配一个伪终端,并且进入伪终端;

在这里插入图片描述

注意:
1、启动普通容器的方式基本不用,没有伪终端,没有太大价值;
2、启动交互式容器的方式,容器一创建完毕,立即进入伪终端

③守护式方式创建并启动容器(启动后不进入容器) docker run -di --name 别名 镜像ID

在这里插入图片描述

(2)Docker进入容器

a,第一种

docker attach 容器ID or 容器名

(有时候很难执行这个命令)

不能进入停止的状态的容器
You cannot attach to a stopped container, start it first

b、Docker进入容器执行命令

docker exec -it 容器名称 或者 容器ID 执行命令

执行完后就进入了容器
在这里插入图片描述

(3)Docker列出容器 docker ps [OPTIONS]

OPTIONS说明:
-a :显示所有的容器,包括未运行的。
-f :根据条件过滤显示的内容。
–format :指定返回值的模板文件。
-l :显示最近创建的容器。
-n :列出最近创建的n个容器。
–no-trunc :不截断输出。
-q :静默模式,只显示容器编号。
-s :显示总的文件大小。

=================================================
docker ps 查看正在运行的容器
docker ps -a 查看所有容器
docker ps -n 2 显示最近创建的2个容器
docker ps -f status=exited 查看停止的容器

在这里插入图片描述

(4)Docker退出容器 exit 容器停止退出 ctrl+P+Q 容器不停止退出

在这里插入图片描述

(5)Docker启动容器 docker start 容器ID or 容器名

在这里插入图片描述

(6)Docker重启容器 docker restart 容器ID or 容器名

在这里插入图片描述

(7)Docker停止容器 docker stop 容器ID or 容器名

在这里插入图片描述

暴力删除,直接杀掉进程 (不推荐) docker kill 容器ID or 容器名

在这里插入图片描述

(8)Docker删除容器 docker rm 容器ID

在这里插入图片描述

如果删除正在运行的容器,会报错
在这里插入图片描述

我们假如需要删除的话,需要强制删除;

docker rm -f 容器ID

在这里插入图片描述
删除多个容器

docker rm -f 容器ID1 容器ID2 中间空格隔开

在这里插入图片描述
删除所有容器(这里就不演示la)

docker rm -f $(docker ps -qa)

9、Docker容器日志

$ docker logs [OPTIONS] CONTAINER

Options:
–details 显示更多的信息
-f, --follow 跟踪实时日志
–since string 显示自某个timestamp之后的日志,或相对时间,如42m(即42分钟)
–tail string 从日志末尾显示多少行日志, 默认是all
-t, --timestamps 显示时间戳
–until string 显示自某个timestamp之前的日志,或相对时间,如42m(即42分钟) (以上了解)

在这里插入图片描述

这里推荐,简单粗暴方式,直接去docker容器文件里找,然后还可以下载来看;
具体未知:/var/lib/docker/containers/
在这里插入图片描述

over…


作者:囚徒i



docker命令 Docker

需要 登录 后方可回复, 如果你还没有账号请 注册新账号