为了账号安全,请及时绑定邮箱和手机立即绑定

Docker命令-docker exec

标签:
Docker

docker exec

原文

描述

在运行的容器中执行命令

使用

$ docker exec [options] container command [arg...]

选项

名称默认描述
--detach, -d
后台运行模式,在后台执行命令相关命令
--detach-keys
覆盖容器后台运行的一些参数信息
--env, -e
设置环境变量
--interactive, -i
展示容器输入信息STDIN
--privileged
为命令提供一些扩展权限
--tty, -t
命令行交互模式
--user, -u
设置用户名(format: <name|uid>[:<group|gid>])
--workdir, -w
指定容器内的目录

docker exec是需要容器处于运行中且PID 1进程也处于运行中才能执行的操作。命令执行后会进入容器的默认工作目录,如果在Dockerfile中指定了工作目录,则会进入Dokcerfile指定的目录,如果命令中指定了工作目录-w则会进入该目录。

使用示例

  1. 启动一个容器,并且开启一个bash会话。

$ docker run --name ubuntu_bash --rm -i -t ubuntu bash
  1. 后台执行命令并且在容器内创建一个文件。

$ docker run -d ubuntu_bash touch /tmp/execWorks
  1. 执行命令,开启一个新的bash会话。

$ docker exec -it ubuntu_bash bash
  1. 执行命令并设置环境变量

$ docker exec -e VAR=1 ubuntu_bash bash

注意:这里的环境变量只会在这次会话中生效。

$ docker exec -it ubuntu_bash bash
  1. 可以通过命令查看容器默认工作目录。

$ docker exec -it ubuntu_bash pwd/
  1. 执行命令并进入指定的工作目录

$ docker exec -ti -w /root ubuntu_bash pwd/root
  1. 也可以直接指定bash目录进入终端

$ docker exec -ti ubuntu_bash /bin/bash



作者:泥称已被栈用
链接:https://www.jianshu.com/p/d858d3cfd427

点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消