以下を自動化するbashスクリプトを書きたいと思います。
実行中のコンテナに入る
docker exec -it CONTAINER_NAME /bin/bash
いくつかのコマンドを実行します。
cat /dev/null > /usr/local/tomcat/logs/app.log
exit
問題のある部分は、いつdocker exec
実行されるかです。新しいシェルが作成されますが、他のコマンドは実行されません。
それを解決する方法はありますか?
あなたは使用することができますheredoc
してdocker exec
コマンドを実行します。
docker exec -i CONTAINER_NAME bash <<'EOF'
cat /dev/null > /usr/local/tomcat/logs/app.log
exit
EOF
変数を使用するには:
logname='/usr/local/tomcat/logs/app.log'
次に、次のように使用します。
docker exec -i CONTAINER_NAME bash <<EOF
cat /dev/null > "$logname"
exit
EOF
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加