docker使用中に困ったtailプロセス未終了事件

docker使用中に困ったtailプロセス未終了事件

ソフトバンク・au・ドコモの方は、公式のオンラインショップを利用すれば頭金不要で通常のショップよりお得に購入できます。

発端はdockerの中で動作中のapacheログをリアルタイムに表示したことでした。

動作中のdockerへattachして、
「tail -f /var/log/apache2/ログファイル」
コマンドを実行。

そうかそうか。なるほどー
ふむふむ。

必要なのはもうわかったし、Ctrl + Cキーで・・・

(キーボー・キーボー)・・・(キーボードを押す音^^;;)
^C(Ctrl + C)

あら?

tail プロセスが終了しません!!!!!!!!

稼働中のwebサーバを止める訳にはいかない!!

検証環境ながら最初に頭を過ったのは、検証環境だからといってdockerプロセスを終了して、
docker中のwebサーバまで止める訳には行かないという、使命感でした。

どうやら、dockerの外部から稼働中のdocker内部のプロセスをOn/Offする方法は
見つからず、残念(汗)

答えは、Ctrl + ¥を押すこと!!

結論からいうと、Ctrl + ¥を押してフォアグラウンドで起動中のtailプロセスを終了することができました。

Ctrl + CとCtrl + Zを試してもどっちも効かずで、焦りましたね(汗)

ちなみに、それぞれの操作で以下のようなことが起こります。

  • Ctrl + Cを押す -> 実行中のプロセスへSIGINTを送る。デフォルトだとこれでプロセス終了。
  • Ctrl + Zを押す -> 実行中のプロセスへSIGTSTPを送る。プロセスを一時停止し、バックグラウンドへ回す。
  • Ctrl + ¥を押す -> 実行中のプロセスへSIGQUITを送る。プロセス終了。

今回のdocker環境では、SIGINTとSIGTSTPが効かなかったとのことです。

ちなみにCtrlキーとの組み合わせ設定については、以下コマンドにて確認可能です。

(以下、今回のdocker内部で実行した結果)

最後に

大した内容ではありませんが事前に知らず、障害対応中に遭遇してしまうと困りますよね。
ぜひ頭のどっかにinputして、docker運用時に困ったら思い出してもらえればと思います。

ソフトバンク・au・ドコモの方は、公式のオンラインショップを利用すれば頭金不要で通常のショップよりお得に購入できます。

【週刊bitWave】(メルマガ)始めました!

登録はこちらからメールアドレスを入力してお申込みください。

ご登録いただいたメールアドレスは 【週刊bitWave】の更新情報の配信にのみ使用します。

個人情報の取扱いに関しては、「プライバシーポリシー」をご確認ください。解除はいつでもこちらから行うことが可能です。

あなたにおすすめ

仮想環境で『Ansible』を使ってサーバ構築... 最近、サーバ構築を実施する必要がありました。 まずは仮想環境を作り、サーバ構築を……と思ったのですが、私はインフラ周りの経験が浅く、色々困ったことが頻出してしまいました。 今回の記事では、私と同じような “サーバ構築ビギナー” ...
内線電話用の番号検索|Slack APPで作ってみた... ショーケース・ティービーではメール誤送信防止という観点から、社内連絡ではチャットツールを使用しています。 現在使用しているツールは「HipChat」。 <bitWave関連記事『情報漏えいしないための決定打!”Hip Chat”』>...
Amazon EC2|Red Hat Linux 7.3で“Muninインストール“や“パッケージ導... ナマステ~! 私はナラヤンです! 今回が初投稿になるのですが、実はこれまで何度か本bitWave上でも登場していました。 <bitWave関連記事『おもてなしの企業の社員が、ネパール人をおもてなししてみた!』> <bitWave関...
継続的インテグレーションツール『Jenkins』を触ってみた... こんにちは。M.Sです。 現在、『Jenkins』からSeleniumを実行するお題に取り組んでいます。 『Jenkins』ってなに? 身近な継続的インテグレーションとは 『Jenkins』はjavaで実装されたオープンソー...