docker exec执行多个命令详解

本文详细介绍了如何在Docker运行中的容器内执行多个命令的方法,通过使用bash shell来串联命令,实现复杂的操作流程。同时,文章还提供了具体的使用示例,包括在容器内部切换目录并进行git操作的场景。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

docker exec执行多个命令详解

2018年04月23日 22:46:24 阅读数:6928 标签: dockercontainershellexec 更多

个人分类: DockerGitMicro Services

版权声明:本文为博主原创文章,转载请注明出处。 https://blog.youkuaiyun.com/taiyangdao/article/details/71598935

docker exec命令能够在运行着的容器中执行命令。docker exec命令的使用格式:

docker exec [OPTIONS] container_name COMMAND [ARG...]

OPTIONS说明:

-d,以后台方式执行命令;

-e,设置环境变量

-i,交互模式

-t,设置TTY

-u,用户名或UID,例如myuser:myusergroup

 

通常COMMAND只能是一条语句,为了支持多个命令的执行,需要将多个命令连接起来交给Shell,docker exec命令的使用示例如下:

 
  1. sudo docker exec myContainer bash -c "cd /home/myuser/myproject && git fetch ssh://gerrit_server:29418/myparent/myproject ${GERRIT_REFSPEC} && git checkout FETCH_HEAD";

  2. sudo docker exec myContainer bash -c "cd /home/myuser/myproject;git fetch ssh://gerrit_server:29418/myparent/myproject ${GERRIT_REFSPEC};git checkout FETCH_HEAD";

注意:对于已经暂停或停止了的容器,无法执行docker exec命令,如下将抛出异常:

 
  1. docker pause myContainer

  2. docker exec myContainer ...

 

参考链接:

https://docs.docker.com/engine/reference/commandline/exec/

转载于:https://my.oschina.net/u/3367404/blog/1933066

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值