banner) コマンドを Dockerfile にしたのでメモしておく。
banner コマンドの Dockerfile
仕事をしてるとたまに banner コマンドを使うときがある。 普段は Mac で作業してて Mac に入ってる banner コマンドは BSD 版で縦出力なんだけど、自分は縦出力じゃなくて横出力したいことが多くて banner コマンドを使うときは適当な Linux 機に入って banner コマンドを使ってる。Linux 機に入って banner コマンドを打つのはまあまあ面倒くさいので Dockerfile にした。
Dockerfile
Dockerfile はこんな感じにしてる。
FROM centos:7 RUN yum install -y epel-release && \ yum install -y banner COPY docker-entrypoint.sh /usr/local/bin ENTRYPOINT ["docker-entrypoint.sh"]
docker-entrypoint.sh はこんな感じ。
#!/bin/sh banner "$@"
使い方
こんな感じで使ってる。
$ docker image build --tag docker-banner . $ docker container run --rm -it docker-banner Hello # # ####### # # ####### # # # # # # # # # # # # # # ####### ##### # # # # # # # # # # # # # # # # # # # # ####### ####### ####### #######
banner コマンドの入力が複数あると改行する。改行したくなかったら "aaa bbb"
みたいにする。
$ docker container run --rm -it docker-banner aaa bbb # # # # # # # # # # # # # # # # # # # # # ####### ####### ####### # # # # # # # # # # # # ###### ###### ###### # # # # # # # # # # # # ###### ###### ###### # # # # # # # # # # # # ###### ###### ###### $ docker container run --rm -it docker-banner "aaa bbb" # # # ###### ###### ###### # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # ###### ###### ###### ####### ####### ####### # # # # # # # # # # # # # # # # # # # # # # # # ###### ###### ######
入力が長くて途中で切れちゃうときは --env COLUMNS=100
みたいにして COLUMNS
環境変数を設定して実行すると途中で切れなくなる。
$ docker container run --rm -it docker-banner "Hello World" # # ####### # # ####### # # ####### ###### # # # # # # # # # # # # # # # # # # # # # # # # # # # # ####### ##### # # # # # # # # # ###### # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # ####### ####### ####### ####### ## ## ####### # # $ docker container run --rm -it --env COLUMNS=100 docker-banner "Hello World" # # ####### # # ####### # # ####### ###### # ###### # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # ####### ##### # # # # # # # # # ###### # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # ####### ####### ####### ####### ## ## ####### # # ####### ######