簡體   English   中英

Docker-如何檢查Dockerfile中的curl命令是否具有響應代碼200

[英]Docker - How to check if curl command inside Dockerfile had response code 200

在Dockerfile內,我嘗試使用curl下載工件。 我檢查了一下,盡管該工件不存在(因此得到了404),但docker build仍在運行。

RUN curl -H 'Cache-Control: no-cache' ${STANDALONE_LOCATION} -o $JBOSS_HOME/standalone/configuration/standalone.xml

有沒有辦法檢查curl響應代碼是否為200,否則拋出錯誤?

您可以在curl調用中添加-f (或--fail ),這將導致curl在服務器錯誤時默默地失敗。 curl聯機幫助頁

-f /-失敗

(HTTP)在服務器錯誤時靜默失敗(根本沒有輸出)。 這樣做主要是為了更好地使腳本等能夠更好地處理失敗的嘗試。 在正常情況下,當HTTP服務器無法交付文檔時,它會返回HTML文檔,說明其內容(通常還會說明原因以及更多內容)。 該標志將阻止curl輸出該錯誤並返回錯誤22。

此方法不是故障安全的,並且有時會漏出不成功的響應代碼,尤其是在涉及身份驗證時(響應代碼401和407)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM