curl -fsSL
の意味
Dockerfileを読んでいたときに遭遇したので、自分用のメモとして残します。
-f, --fail
(HTTP)サーバーエラーでサイレントに失敗します(出力はまったくありません)。
これは主に、失敗した試行をより適切に処理するためにスクリプトなどを有効にするために行われます。
通常、HTTPサーバーがドキュメントの配信に失敗すると、そのことを示すHTMLドキュメントが返されます(多くの場合、理由なども説明されています)。
このフラグは、curlがそれを出力するのを防ぎ、エラー22を返します。
この方法はフェイルセーフではなく、特に認証が含まれる場合(応答コード401および407)、失敗した応答コードがすり抜ける場合があります。
-s, --silent
サイレントモード。 プログレスメーターやエラーメッセージを表示しません。 カールをミュートにします。
-S, --show-error
-sとともに使用すると、失敗した場合にcurlにエラーメッセージが表示されます。
-L, --location
(HTTP / HTTPS)要求されたページが別の場所(Location:ヘッダーと3XX応答コードで示される)に移動したことをサーバーが報告した場合、このオプションはcurlに新しい場所で要求をやり直させます。
まとめ
- HTTPリクエストがサーバーのエラーにより失敗した時に22というEXIT CODEを返す。
- 進行の状況を表示せず、エラーメッセージは表示する。
- アクセスしたページが移動していた場合、もう1度移動先にリクエストを送る。