Docker: exec命令浅析

简介

Docker exec命令是Docker提供的一个强大工具,用于在正在运行的容器中执行命令。在此将介绍Docker exec命令的用法和示例,帮助大家更好地理解和使用这个命令。

Docker是一种流行的容器化平台,允许用户在容器中运行应用程序。有时候,在容器内执行命令可以帮助我们调试、排查问题或进行其他操作。

docker exec

docker exec命令用于在运行中的Docker容器中执行命令。它允许用户与容器内的应用程序进行交互,并在容器中运行命令行工具、脚本或其他操作。

通过使用exec命令,用户可以在不需要进入容器的情况下直接与容器内的环境进行交互。

**需要注意的是,**对于已经暂停或停止了的容器,无法执行docker exec命令

docker exec语法

Docker exec命令的基本语法如下:

docker exec OPTIONS CONTAINER COMMAND ARG...

命令详解

  • OPTIONS:可选参数,用于设置执行选项。
  • CONTAINER:容器名称或ID,指定要执行命令的容器
  • COMMAND:要在容器内执行的命令
  • ARG:命令的参数,可以有多个

options常用参数

  • -d,在后台运行命令
  • -i,即使没有附加也保持 STDIN 打开,和 -t 配合
  • -t,进入容器的 CLI 模式
  • -e,设置环境变量
  • --env-file,读入环境变量文件
  • -w,需要执行命令的目录
  • -u,指定访问容器的用户名

注意:可以运行docker exec --help查看更详细的参数解释

docker exec使用示例

1、查看容器内的文件列表

docker exec test ls -l

test:容器名

该命令将在名为test的容器中执行ls -l命令,显示容器内的文件列表。

2、执行容器内的指定脚本

docker exec -it test test.sh

该命令将运行test容器中的test.sh脚本。

3、进入容器的 CLI 模式

docker exec -it test bash

该命令将进入test容器的终端,可以在这里运行shell命令。

4、指定工作目录执行命令

docker exec -it -w /home/hhd test pwd

5、以root身份进入容器

docker exec -it -uroot test bash

该命令允许用户用root权限在容器内进行操作,不用担心用户的权限问题。

相关推荐
ERD Online1 小时前
docker-compose 一键部署的 MIT 开源数据库建模平台
数据库·docker·开源
ZzzZZzzzZZZzzzz…2 小时前
K8S实战:NFS+StorageClass+PV/PVC+Deployment
运维·云原生·容器·kubernetes·storageclass·linux运维·持久卷
三言老师3 小时前
CentOS7.9 + Kubernetes 1.18.20 -清理所有 docker / containerd 残留
docker·容器·kubernetes
circuitsosk3 小时前
从Docker到Kubernetes:AI应用服务化与弹性伸缩的落地实践
人工智能·docker·kubernetes·ai应用部署
showyoui4 小时前
K8s 集群迁移踩坑:Istio 升级后 nginx 403
网络·docker·kubernetes·istio·service_mesh
云川之下6 小时前
【k8s】sriov‑device‑plugin、sriov‑network‑config‑daemon详解
云原生·容器·kubernetes
golang学习记19 小时前
Go 项目使用docker compose的正确方式
开发语言·docker·golang
张忠琳1 天前
【NPU】Ascend Device Plugin —Part 6 K8s客户端 + 重复检测模块 超深度源码分析之二
云原生·容器·kubernetes·npu·docker device
雨声不在1 天前
私有 Docker Registry 排障实录:两个隐蔽的坑
docker·容器
云川之下1 天前
【k8s】SR‑IOV‑Network‑Operator 详解
云原生·容器·kubernetes