[解決済み] DockerfileでDockerコンテナにBashのエイリアスを設定するにはどうしたらいいですか?
2023-01-23 03:24:21
質問
Docker初心者です。環境変数の設定に ENV 命令で環境変数を設定できることがわかりました。しかし、Dockerfileの長いコマンドのBashエイリアスをどのように設定するのでしょうか?
どのように解決するのですか?
基本的には、いつもやっているように、ユーザーの
.bashrc
ファイルに追加します。
FROM foo
RUN echo 'alias hi="echo hello"' >> ~/.bashrc
いつものように、これは対話型シェルでのみ動作します。
docker build -t test .
docker run -it --rm --entrypoint /bin/bash test hi
/bin/bash: hi: No such file or directory
docker run -it --rm test bash
$ hi
hello
非インタラクティブなシェルでは、小さなスクリプトを作成して、それをパスに置く必要があります。
RUN echo -e '#!/bin/bash\necho hello' > /usr/bin/hi && \
chmod +x /usr/bin/hi
エイリアスがパラメータを使用する場合(例.
hi Jim
->
hello Jim
を追加するだけです。
"$@"
:
RUN echo -e '#!/bin/bash\necho hello "$@"' > /usr/bin/hi && \
chmod +x /usr/bin/hi
関連
-
[解決済み] Bashスクリプトのソースディレクトリをスクリプト自体から取得するにはどうすればよいですか?
-
[解決済み] Bashシェルスクリプトでディレクトリが存在するかどうかを確認するにはどうすればよいですか?
-
[解決済み] Bash prints リテラルの改行をエコーする \n
-
[解決済み] Dockerfileの'COPY'と'ADD'コマンドの違いは何ですか?
-
[解決済み] Dockerコンテナの中から、マシンのローカルホストに接続するにはどうすればよいですか?
-
[解決済み] Bashでコマンドの出力に変数を設定するにはどうすればよいですか?
-
[解決済み] ホストからDockerコンテナにファイルをコピーする方法は?
-
[解決済み] リポジトリを使用せずに、あるホストから別のホストにDockerイメージをコピーする方法
-
[解決済み] パラメータを取るBashのエイリアスを作る?
-
[解決済み】Dockerは仮想マシンとどう違うの?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] Bash prints リテラルの改行をエコーする \n
-
[解決済み] シェルスクリプトで文字列が空でもスペースでもないことをチェックする
-
[解決済み] 複数のbashスクリプトにまたがってpushd/popdのスタックを表示しない (quiet pushd/popd)
-
[解決済み] シェルスクリプトからウェブブラウザを起動する方法は?
-
[解決済み] Bashの履歴にコマンドを表示させないようにするには?
-
[解決済み] .bashrcのエイリアスをvimのシェルコマンドで使用できるようにするには?(:!...)
-
[解決済み] WindowsのバッチとLinuxのBashの両方で実行できるスクリプトは?
-
[解決済み] 最終編集日順のファイル一覧
-
[解決済み] シェルのワイルドカード文字展開を停止しますか?
-
[解決済み] スペースで区切られた引数の受け渡し (bash) スクリプト