docker 實(shí)現(xiàn)容器與宿主機(jī)無(wú)縫調(diào)用shell命令
如下所示:
nsenter -t 1 -m -u -n -i sh -c "echo hello world! "
docker容器加上privilege權(quán)限, 設(shè)置pid: "host"
補(bǔ)充:在宿主機(jī)執(zhí)行docker容器中的shell腳本或命令
常見(jiàn)命令形式:
docker exec -it master /bin/bash -c 'echo $PATH' docker exec -it master /bin/bash -c 'cd /home/bigdata/shell && ./test.sh'
如果shell腳本中涉及到環(huán)境變量,或者提示JAVA_HOME is not set,可以在腳本中加上以下命令
export JAVA_HOME=jdk路徑
補(bǔ)充:在docker宿主機(jī)上運(yùn)行docker中container中的執(zhí)行的命令
腳本如下:
docker exec -u root xxx(container名稱(chēng)) bash -c '命令1 && 命令2'
實(shí)際例子如下:
docker exec -u root mycentos bash -c 'mkdir /home/test.txt && chmod 777 /home/test.txt && runuser - oracle -c "rm -rf /home/test.txt"'
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持本站。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教。
版權(quán)聲明:本站文章來(lái)源標(biāo)注為YINGSOO的內(nèi)容版權(quán)均為本站所有,歡迎引用、轉(zhuǎn)載,請(qǐng)保持原文完整并注明來(lái)源及原文鏈接。禁止復(fù)制或仿造本網(wǎng)站,禁止在非www.sddonglingsh.com所屬的服務(wù)器上建立鏡像,否則將依法追究法律責(zé)任。本站部分內(nèi)容來(lái)源于網(wǎng)友推薦、互聯(lián)網(wǎng)收集整理而來(lái),僅供學(xué)習(xí)參考,不代表本站立場(chǎng),如有內(nèi)容涉嫌侵權(quán),請(qǐng)聯(lián)系alex-e#qq.com處理。