docker exec執(zhí)行多個(gè)命令的操作
docker exec命令能夠在運(yùn)行著的容器中執(zhí)行命令。
docker exec命令的使用格式:docker exec [OPTIONS] container_name COMMAND [ARG...]OPTIONS說明:
-d,以后臺方式執(zhí)行命令;
-e,設(shè)置環(huán)境變量
-i,交互模式
-t,設(shè)置TTY
-u,用戶名或UID,例如myuser:myusergroup
通常COMMAND只能是一條語句,為了支持多個(gè)命令的執(zhí)行,需要將多個(gè)命令連接起來交給Shell,
docker exec命令的使用示例如下:sudo docker exec myContainer bash -c 'cd /home/myuser/myproject && git fetch ssh://gerrit_server:29418/myparent/myproject ${GERRIT_REFSPEC} && git checkout FETCH_HEAD';sudo docker exec myContainer bash -c 'cd /home/myuser/myproject;git fetch ssh://gerrit_server:29418/myparent/myproject ${GERRIT_REFSPEC};git checkout FETCH_HEAD';
注意:對于已經(jīng)暫停或停止了的容器,無法執(zhí)行docker exec命令,如下將拋出異常:
docker pause myContainer docker exec myContainer ...
補(bǔ)充:Docker exec 宿主對容器執(zhí)行命令
Docker 下 exec 從宿主機(jī)對容器執(zhí)行命名操作docker exec -it # 交互可以進(jìn)入容器 ; exec 也可以在宿主機(jī)對容器執(zhí)行命令;docker attach # 也是可以進(jìn)入容器1、遠(yuǎn)程 執(zhí)行命令:文件操作:
docker exec -d nginx1 touch /etc/1.txt-d:后臺型,在 nginx1 容器中創(chuàng)建一個(gè) 1.txt 文件2、文件操作 拷貝依然是 cp;
docker cp 1.11.sh nginx1:/root/# 從宿主機(jī) 拷貝文件docker exec nginx1 ls /root# 查看 文件docker exec nginx1 rm -rf /root/1.11.sh# 刪除文件3、diff 查看容器的目錄結(jié)構(gòu);
docker diff nginx1# 查看 nginx1 容器的文件結(jié)構(gòu)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持好吧啦網(wǎng)。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教。
相關(guān)文章:
