Dockerで簡単なCICDツールチェーンを構築した時に、デモの操作もコンテナ上で操作したいと考えていた。
たどり着いた方法は単純で、「sleepで一定時間眠って寿命が来たら停止する」イメージを用意した。
以下はDockerfileの例。ubuntuにしてみた。
FROM ubuntu
ADD <デモプロジェクトファイルとか>
ADD <環境設定ファイルとか>
RUN apt-get install -y <エディタとかgitとか必要なコマンド>
RUN <その他必要な処理がもしあれば>
ENTRYPOINT sleep 36000
起動後10時間で予告なく終了する、残業を控えさせる思いやりと常にタイムマネジメントを意識させるスパルタ教育を兼ね備えた作業環境が実現できた。
上記Dockerファイルで作成したイメージをデモ環境コンテナネットワークに接続して実行し、docker exec bashなどでログインして使うだけ。
教訓: デモは1日10時間まで