docker命令总结-详细

Images:

rmi:docker rmi 镜像id-----------删除镜像

tag:

可以使用 docker images 命令,它会列出本地已经下载的镜像及其标签信息。

docker images [OPTIONS] [REPOSITORY[:TAG]]

history->run->running

docker run 新建容器并启动

container:

wait:

如果你希望等待一个容器的执行完成,可以使用 docker wait 命令。这个命令会阻塞当前进程,直到指定容器完成其工作并退出。

docker wait CONTAINER_ID_or_NAME

logs:

查看日志

# 命令 docker logs -tf  容器id

# 命令 docker logs -tf --tail number 容器id

inspect:

查看镜像的元数据

# 命令docker inspect 容器id

attach:

进入当前正在运行的容器

# 方式二:命令docker attach 容器id

^p,^q:

^p 表示 Ctrl + p,用于在通过 docker attach 或 docker exec 进入容器的交互式终端时,退出容器而不关闭它。这通常用于在容器内部执行命令后返回到容器外部的情况。

^q 表示 Ctrl + q,用于在容器的交互式终端中分离(detach)当前的会话,但不会停止容器运行。这样做可以让你回到 Docker 主机的 shell 而不中断容器的执行。

同时按住,表示退出至shell中

top:

查看容器中进程的信息

# 命令 docker top 容器id

port:

端口号

ps:

docker ps    # 列出当前正在运行的容器

# 命令参数可选项

-a        # 列出当前正在运行的容器+历史运行过的容器

-n=?      # 显示最近创建的容器(可以指定显示几条,比如-n=1)

-q        # 只显示容器的编号

rm:docker rm 容器id

exec:

进入当前正在运行的容器

# 方式一:命令docker exec -it 容器id /bin/bash

注意

>**两种方式的区别**

>

>docker exec         # 进入容器后开启一个新的终端,可以在里面操作

>

>docker attach      # 进入容器正在执行的终端,不会启动新的进程

Registry:

search:

docker search  搜索镜像

login:

docker login 命令后,你会被要求输入你的 Docker 镜像仓库的用户名和密码(或者其他认证方式,如访问令牌)。

logout:

docker logout 登出

Engine:

version:

# 显示docker的版本信息

info:

# 显示docker的系统信息,包括镜像和容器的数量

event:

docker event 命令可以实时监视这些事件的发生情况,从而帮助用户了解 Docker 守护进程正在发生的各种活动和操作

-f, --filter: 根据条件过滤事件,例如按类型、对象 ID 等。

--since: 指定事件的起始时间。

--until: 指定事件的结束时间。

container->commit->images

在容器运行时,你可以对容器进行修改,比如安装新的软件包、修改配置等操作。一旦你对容器进行了这些修改,你可以使用 docker commit 命令来创建一个新的镜像。

docker commit [OPTIONS] CONTAINER [REPOSITORY[:TAG]]

CONTAINER 是指定的容器 ID 或者容器的名称。

REPOSITORY 是你希望为新镜像设置的仓库名。

TAG 是你希望为新镜像设置的标签。

running->kill,stop->stop->start->runing

# 启动容器

docker start 容器id       

# 重启容器

docker restart 容器id   

# 停止当前正在运行的容器

docker stop 容器id       

# 强制停止当前容器

docker kill 容器id 

后台启动容器

# 命令docker run -d 镜像名

running->pause->pause->unpause

运行容器:使用 docker run 命令来启动一个新的容器。

docker run [OPTIONS] IMAGE [COMMAND] [ARG...]

暂停容器:使用 docker pause 命令来暂停一个运行中的容器。

docker pause CONTAINER [CONTAINER...]

恢复容器:使用 docker unpause 命令来恢复一个被暂停的容器。

docker unpause CONTAINER [CONTAINER...]

file/folders->cp-> file/folders-------------------- # 命令docker cp 容器id:容器内路径 目的主机的路径

image----------diff----------------container

Tar files->import->images

 docker import 命令将一个本地的 tar 文件导入为一个 Docker 镜像。

docker import file.tar image_name:tag,将指定的 tar 文件导入为一个 Docker 镜像。

Tar files->load->images

使用 docker load 命令将一个或多个 Docker 镜像加载到 Docker 中。

docker load -i file.tar,加载从 docker save 命令导出的一个或多个 Docker 镜像文件。

Image->save->Tar file

使用 docker save 命令将一个或多个 Docker 镜像保存为一个 tar 归档文件。

docker save -o file.tar image_name:tag,将指定的 Docker 镜像保存为一个 tar 文件。

Dockerfile->build->images

使用 docker build 命令根据 Dockerfile 构建一个 Docker 镜像。

在包含 Dockerfile 的目录中,运行 docker build -t image_name:tag . 来构建 Dockerfile 所描述的镜像。

Image->push->Registry

 docker push 命令将一个 Docker 镜像推送(上传)到远程的 Docker 镜像仓库(Registry)。

docker push registry_url/image_name:tag,将本地的 Docker 镜像推送到指定的 Docker 镜像仓库。

Registry->pull->images

docker pull  下载镜像

Container->export->Tar files

对外暴露的端口

<think>好的,我现在需要帮助用户解决如何在基于Yum的系统上正确卸载Docker,包括相关组件如docker-client、docker-common等的问题。首先,用户提到他们遇到了“命令未找到”的问题,因此想通过卸载Docker来解决。我需要确保提供的步骤能够彻底移除Docker及其所有相关组件,避免残留文件导致的问题。 首先,回顾用户提供的引用内容。引用[2]、[3]和[5]提到了卸载Docker命令,包括使用yum remove来删除旧版本,以及手动删除残留文件和目录。特别是引用[5]中的rm -rf命令,可以清除Docker的配置文件和数据目录。用户之前的回答中也提到了卸载旧版本的步骤,但可能需要更详细的指导。 接下来,我需要确认卸载步骤的正确顺序。通常,卸载软件包后可能会有残留文件,所以应该先使用包管理器卸载,再手动清理剩余文件。根据引用中的信息,正确的步骤应该是: 1. 使用yum remove卸载Docker相关软件包,包括docker-ce、docker-ce-cli、containerd.io等。 2. 手动删除Docker创建的配置文件、镜像存储目录和其他相关目录,如/var/lib/docker、/var/lib/containerd等。 3. 确保用户了解如何验证卸载是否成功,比如再次运行docker命令检查是否存在,或者查看相关目录是否已删除。 需要注意的是,用户可能之前安装的是不同版本的Docker,或者通过不同方式安装的,因此需要涵盖所有可能的组件。引用中提到的docker-client、docker-common等包也需要包含在卸载命令中,尽管在较新系统中这些可能已被替换。此外,用户可能误操作导致部分组件未被正确卸载,所以需要全面覆盖。 另外,用户提到“命令未找到”的问题,这可能是因为Docker未正确安装或路径问题,但用户仍希望彻底卸载。因此,在卸载过程中,需要确保所有相关的可执行文件和配置都被移除,避免残留导致的问题。 最后,应该建议用户在卸载完成后验证是否成功,例如尝试运行docker命令,或检查相关服务是否已停止。同时,可以提示用户在需要时重新安装Docker的步骤,但当前问题主要集中在卸载。 总结步骤: 1. 停止Docker服务。 2. 使用yum卸载所有Docker相关包。 3. 手动删除残留文件和目录。 4. 验证卸载是否彻底。 需要确保命令准确无误,并且覆盖所有可能的组件和残留文件,避免遗漏。</think>### 基于 Yum 的系统彻底卸载 Docker 指南 #### 1. 停止 Docker 服务 ```bash sudo systemctl stop docker docker.socket containerd ``` #### 2. 卸载 Docker 核心组件 通过 Yum 移除所有 Docker 相关软件包: ```bash sudo yum remove docker-ce docker-ce-cli docker-ce-rootless-extras \ containerd.io docker-buildx-plugin docker-compose-plugin \ docker-client docker-client-latest docker-common docker-latest \ docker-latest-logrotate docker-logrotate docker-engine ``` 该命令将卸载: - 社区版核心组件(`docker-ce`, `docker-ce-cli`) - 容器运行时(`containerd.io`) - 旧版遗留组件(`docker-client`, `docker-common`等)[^2][^3] #### 3. 清理残留文件 手动删除 Docker 创建的系统资源: ```bash sudo rm -rf /var/lib/docker sudo rm -rf /var/lib/containerd sudo rm -rf /etc/docker sudo rm -rf /run/docker sudo rm -rf /var/run/docker.sock ``` 这些目录包含: - 容器镜像存储(`/var/lib/docker`) - 运行时数据(`/run/docker`) - 配置文件(`/etc/docker`)[^5] #### 4. 验证卸载结果 确认无残留组件: ```bash which docker # 应无输出 rpm -qa | grep -i docker # 应无匹配结果 ``` #### 补充说明 - 若出现 `Failed to stop docker.service` 错误,可使用 `sudo systemctl reset-failed docker` 重置服务状态 - 完全卸载后重启系统可确保所有挂载点解除(可选) --- ### 卸载后常见问题解决 **Q:卸载后仍提示 `docker: command not found`?** A:该提示实际表示卸载成功,原因为系统已无 Docker 可执行文件。若出现其他错误提示,可能需要检查: ```bash echo $PATH | grep docker # 检查环境变量残留 ``` **Q:如何防止旧配置影响未来安装?** A:建议执行: ```bash sudo rm -rf ~/.docker # 删除用户级配置 ``` --- ### 相关扩展问题 1. 如何彻底清除 Docker 镜像缓存? 2. 卸载后如何重新安装指定版本的 Docker? 3. 容器运行时 containerd 与 Docker 的依赖关系是什么?
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值