個人的メモ。rails のバッチ処理の場合を想定。
手順
リモートサーバーにssh接続する。
$ kubectl exec -it <Pod名> /bin/bash
$ apt-get update
$ apt-get install tmux
$ tmux new -s <session名>
# ログを書く出す前に、tmux-logging pluginをinstall
$ mkdir /temp && cd /temp
$ git clone https://github.com/tmux-plugins/tmux-logging ~/temp
$ echo 'run-shell ~/temp/logging.tmux' >> /root/.tmux.conf
$ tmux source-file /root/.tmux.conf
<ctr + b, P> # Started logging to /root/xxxxxx.log と表示される。このファイル名をメモ。
# railsディレクトリへ移動。
$ cd /app
$ bundle exec rails runner lib/batch/batch.rb
# ctr + w でターミナルを閉じてOK!
バッチ処理終了後にコンテナからローカルにファイルコピーする。
$ kubectl cp <Pod名>:/root/xxxxxx.log ./local_file.log